summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.bzrignore1
-rw-r--r--CMakeLists.txt41
-rw-r--r--Makefile.am5
-rw-r--r--client/client_priv.h4
-rw-r--r--client/mysqldump.c107
-rw-r--r--client/mysqlslap.c109
-rw-r--r--cmd-line-utils/libedit/Makefile.am4
-rw-r--r--config/ac-macros/ha_ndbcluster.m47
-rw-r--r--config/ac-macros/large_file.m411
-rw-r--r--config/ac-macros/misc.m424
-rw-r--r--configure.in4
-rw-r--r--extra/yassl/taocrypt/src/coding.cpp2
-rw-r--r--include/Makefile.am7
-rw-r--r--include/config-netware.h3
-rw-r--r--include/config-win.h2
-rw-r--r--include/my_global.h4
-rw-r--r--include/mysql.h4
-rw-r--r--mysql-test/Makefile.am3
-rw-r--r--mysql-test/include/mix1.inc41
-rw-r--r--mysql-test/r/ddl_i18n_koi8r.result12
-rw-r--r--mysql-test/r/ddl_i18n_utf8.result12
-rw-r--r--mysql-test/r/events_bugs.result7
-rw-r--r--mysql-test/r/federated.result37
-rw-r--r--mysql-test/r/func_time.result8
-rw-r--r--mysql-test/r/im_options.result10
-rw-r--r--mysql-test/r/innodb_mysql.result43
-rw-r--r--mysql-test/r/log_state.result22
-rw-r--r--mysql-test/r/log_tables.result302
-rw-r--r--mysql-test/r/mysqlbinlog.result7
-rw-r--r--mysql-test/r/mysqldump-max.result36
-rw-r--r--mysql-test/r/mysqldump.result252
-rw-r--r--mysql-test/r/mysqlslap.result44
-rw-r--r--mysql-test/r/openssl_1.result9
-rw-r--r--mysql-test/r/ps.result54
-rw-r--r--mysql-test/r/show_check.result51
-rw-r--r--mysql-test/r/sp-prelocking.result30
-rw-r--r--mysql-test/r/ssl_8k_key.result2
-rw-r--r--mysql-test/r/status.result12
-rw-r--r--mysql-test/std_data/server8k-cert.pem51
-rw-r--r--mysql-test/std_data/server8k-key.pem99
-rw-r--r--mysql-test/suite/funcs_1/datadict/datadict_master.inc15
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/datadict/datadict_tables_error_1044.inc0
-rw-r--r--mysql-test/suite/funcs_1/r/innodb__datadict.result3
-rw-r--r--mysql-test/suite/funcs_1/r/innodb_func_view.result1727
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/innodb_storedproc_02.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/innodb_storedproc_03.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/innodb_storedproc_07.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/innodb_storedproc_08.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/innodb_storedproc_10.result0
-rw-r--r--mysql-test/suite/funcs_1/r/innodb_trig_0102.result2
-rw-r--r--mysql-test/suite/funcs_1/r/innodb_trig_08.result5
-rw-r--r--mysql-test/suite/funcs_1/r/innodb_views.result3
-rw-r--r--mysql-test/suite/funcs_1/r/memory__datadict.result3
-rw-r--r--mysql-test/suite/funcs_1/r/memory_func_view.result1727
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/memory_storedproc_02.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/memory_storedproc_03.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/memory_storedproc_07.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/memory_storedproc_08.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/memory_storedproc_10.result0
-rw-r--r--mysql-test/suite/funcs_1/r/memory_trig_0102.result2
-rw-r--r--mysql-test/suite/funcs_1/r/memory_trig_08.result5
-rw-r--r--mysql-test/suite/funcs_1/r/memory_views.result3
-rw-r--r--mysql-test/suite/funcs_1/r/myisam__datadict.result3
-rw-r--r--mysql-test/suite/funcs_1/r/myisam_func_view.result1727
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/myisam_storedproc_02.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/myisam_storedproc_03.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/myisam_storedproc_07.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/myisam_storedproc_08.result0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/r/myisam_storedproc_10.result0
-rw-r--r--mysql-test/suite/funcs_1/r/myisam_trig_0102.result2
-rw-r--r--mysql-test/suite/funcs_1/r/myisam_trig_08.result5
-rw-r--r--mysql-test/suite/funcs_1/r/myisam_views.result99
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_02.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_03.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_06.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_07.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_08.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_08_show.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/storedproc/storedproc_10.inc0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_02.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_03.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_06.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_07.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_08.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/innodb_storedproc_10.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_02.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_03.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_06.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_07.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_08.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/memory_storedproc_10.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_02.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_03.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_06.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_07.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_08.test0
-rwxr-xr-x[-rw-r--r--]mysql-test/suite/funcs_1/t/myisam_storedproc_10.test0
-rw-r--r--mysql-test/suite/funcs_1/triggers/triggers_0102.inc2
-rw-r--r--mysql-test/suite/funcs_1/views/func_view.inc3
-rw-r--r--mysql-test/suite/row_lock/include/row_lock.inc83
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_big_tab.inc94
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc93
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc93
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_trig.inc96
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_view.inc89
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_view_mix.inc92
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_view_storedp.inc126
-rw-r--r--mysql-test/suite/row_lock/include/row_lock_view_trig.inc99
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_1.result142
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_2.result32
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_3.result32
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_4.result142
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_5.result32
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result97
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result145
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result113
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result151
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result37
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result34
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result40
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result48
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result40
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result312
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result47
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result183
-rw-r--r--mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result38
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_1.result139
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_2.result31
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_3.result30
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_4.result139
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_5.result30
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result177
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result357
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result255
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result148
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result35
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result194
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result200
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result169
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result38
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result309
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result46
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result180
-rw-r--r--mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result36
-rw-r--r--mysql-test/suite/row_lock/readme.txt9
-rw-r--r--mysql-test/suite/row_lock/summary_of_sel_test.txt36
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_2.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_3.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_4.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_5.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test10
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test10
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test10
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test9
-rw-r--r--mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test9
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_1.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_2.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_3.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_4.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_5.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test7
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test7
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test7
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test6
-rw-r--r--mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test6
-rw-r--r--mysql-test/t/disabled.def1
-rw-r--r--mysql-test/t/events_bugs.test15
-rw-r--r--mysql-test/t/federated.test40
-rw-r--r--mysql-test/t/func_time.test8
-rw-r--r--mysql-test/t/log_state.test53
-rw-r--r--mysql-test/t/log_tables.test416
-rw-r--r--mysql-test/t/mysqlbinlog.test25
-rw-r--r--mysql-test/t/mysqldump.test57
-rw-r--r--mysql-test/t/mysqlslap.test2
-rw-r--r--mysql-test/t/ps.test7
-rw-r--r--mysql-test/t/show_check.test64
-rw-r--r--mysql-test/t/sp-prelocking.test31
-rw-r--r--mysql-test/t/ssl_8k_key.test6
-rw-r--r--mysql-test/t/status.test4
-rw-r--r--scripts/make_binary_distribution.sh4
-rw-r--r--scripts/mysql_install_db.sh343
-rw-r--r--scripts/mysql_setpermission.sh22
-rw-r--r--scripts/mysql_system_tables.sql21
-rw-r--r--scripts/mysqld_safe.sh116
-rw-r--r--server-tools/instance-manager/guardian.cc31
-rw-r--r--server-tools/instance-manager/instance.cc44
-rw-r--r--server-tools/instance-manager/instance.h2
-rw-r--r--server-tools/instance-manager/instance_options.cc13
-rw-r--r--server-tools/instance-manager/parse_output.cc401
-rw-r--r--server-tools/instance-manager/parse_output.h16
-rw-r--r--server-tools/instance-manager/portability.h5
-rw-r--r--server-tools/instance-manager/thread_registry.cc11
-rw-r--r--sql/CMakeLists.txt4
-rw-r--r--sql/event_data_objects.cc9
-rw-r--r--sql/event_db_repository.cc8
-rw-r--r--sql/event_queue.cc2
-rw-r--r--sql/handler.cc29
-rw-r--r--sql/handler.h72
-rw-r--r--sql/item_create.cc1
-rw-r--r--sql/item_func.cc11
-rw-r--r--sql/lock.cc125
-rw-r--r--sql/log.cc731
-rw-r--r--sql/log.h90
-rw-r--r--sql/log_event.cc9
-rw-r--r--sql/mysql_priv.h17
-rw-r--r--sql/mysqld.cc3
-rw-r--r--sql/set_var.cc22
-rw-r--r--sql/share/errmsg.txt4
-rw-r--r--sql/slave.cc2
-rw-r--r--sql/sp.cc6
-rw-r--r--sql/sql_acl.cc2
-rw-r--r--sql/sql_base.cc179
-rw-r--r--sql/sql_class.cc3
-rw-r--r--sql/sql_class.h29
-rw-r--r--sql/sql_delete.cc22
-rw-r--r--sql/sql_error.cc3
-rw-r--r--sql/sql_insert.cc2
-rw-r--r--sql/sql_lex.cc133
-rw-r--r--sql/sql_parse.cc35
-rw-r--r--sql/sql_plugin.cc4
-rw-r--r--sql/sql_rename.cc20
-rw-r--r--sql/sql_select.cc7
-rw-r--r--sql/sql_servers.cc6
-rw-r--r--sql/sql_show.cc3
-rw-r--r--sql/sql_table.cc62
-rw-r--r--sql/sql_udf.cc4
-rw-r--r--sql/sql_yacc.yy2
-rw-r--r--sql/table.cc209
-rw-r--r--sql/table.h121
-rw-r--r--sql/tztime.cc15
-rw-r--r--sql/tztime.h1
-rw-r--r--storage/archive/ha_archive.cc59
-rw-r--r--storage/archive/ha_archive.h3
-rw-r--r--storage/csv/ha_tina.cc12
-rw-r--r--storage/csv/ha_tina.h5
-rw-r--r--storage/federated/ha_federated.h1
-rw-r--r--storage/innobase/Makefile.am5
-rw-r--r--storage/innobase/buf/buf0buf.c12
-rw-r--r--storage/innobase/buf/buf0lru.c13
-rw-r--r--storage/innobase/fsp/fsp0fsp.c5
-rw-r--r--storage/innobase/handler/ha_innodb.cc43
-rw-r--r--storage/innobase/include/buf0buf.ic2
-rw-r--r--storage/innobase/include/fsp0fsp.h2
-rw-r--r--storage/innobase/include/lock0iter.h52
-rw-r--r--storage/innobase/include/lock0lock.h14
-rw-r--r--storage/innobase/include/lock0priv.h101
-rw-r--r--storage/innobase/include/lock0priv.ic32
-rw-r--r--storage/innobase/include/mem0mem.ic6
-rw-r--r--storage/innobase/include/page0page.h9
-rw-r--r--storage/innobase/include/row0mysql.h13
-rw-r--r--storage/innobase/include/trx0trx.h8
-rw-r--r--storage/innobase/include/univ.i16
-rw-r--r--storage/innobase/lock/lock0iter.c90
-rw-r--r--storage/innobase/lock/lock0lock.c64
-rw-r--r--storage/innobase/log/log0recv.c247
-rw-r--r--storage/innobase/mem/mem0mem.c1
-rw-r--r--storage/innobase/mem/mem0pool.c6
-rw-r--r--storage/innobase/os/os0file.c3
-rw-r--r--storage/innobase/page/page0page.c12
-rw-r--r--storage/innobase/plug.in4
-rw-r--r--storage/innobase/rem/rem0rec.c6
-rw-r--r--storage/innobase/row/row0mysql.c22
-rw-r--r--storage/innobase/sync/sync0rw.c18
-rw-r--r--storage/innobase/sync/sync0sync.c1
-rw-r--r--storage/innobase/trx/trx0sys.c11
-rw-r--r--storage/innobase/trx/trx0trx.c12
-rw-r--r--storage/innobase/ut/ut0mem.c2
-rw-r--r--storage/myisam/ha_myisam.cc36
-rw-r--r--storage/myisam/ha_myisam.h5
-rw-r--r--storage/myisam/mi_test1.c5
-rw-r--r--storage/myisam/mi_test2.c23
-rw-r--r--storage/myisam/mi_test3.c8
-rw-r--r--storage/ndb/src/mgmclient/Makefile.am1
-rw-r--r--storage/ndb/src/mgmsrv/Makefile.am2
-rw-r--r--storage/ndb/src/ndbapi/NdbScanOperation.cpp2
-rw-r--r--storage/ndb/test/ndbapi/benchronja.cpp19
-rw-r--r--storage/ndb/test/ndbapi/flexAsynch.cpp19
-rw-r--r--storage/ndb/test/ndbapi/flexHammer.cpp15
-rw-r--r--storage/ndb/test/ndbapi/flexScan.cpp11
-rw-r--r--storage/ndb/test/ndbapi/flexTT.cpp19
-rw-r--r--storage/ndb/test/ndbapi/flexTimedAsynch.cpp23
-rw-r--r--storage/ndb/test/ndbapi/initronja.cpp9
-rw-r--r--storage/ndb/test/ndbapi/testIndexStat.cpp30
-rw-r--r--storage/ndb/test/ndbapi/testOperations.cpp5
-rw-r--r--storage/ndb/test/ndbapi/testScanFilter.cpp12
-rw-r--r--storage/ndb/test/ndbapi/test_event_merge.cpp34
-rw-r--r--storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp13
-rw-r--r--storage/ndb/test/run-test/main.cpp36
-rw-r--r--storage/ndb/test/src/NDBT_Test.cpp20
-rw-r--r--win/README4
-rwxr-xr-xwin/create_manifest.js2
-rwxr-xr-xwin/mysql_manifest.cmake7
309 files changed, 6893 insertions, 10327 deletions
diff --git a/.bzrignore b/.bzrignore
index 329c5e227ca..d44aefea583 100644
--- a/.bzrignore
+++ b/.bzrignore
@@ -5,6 +5,7 @@
*.bb
*.bbg
*.bin
+*.cdf
*.core
*.d
*.da
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1bdb1e01612..3dc62977846 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -136,6 +136,9 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
# generate .map files
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MAP /MAPINFO:EXPORTS")
+ # set stack size (see bug#20815)
+ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:1048576")
+
# remove support for Exception handling
STRING(REPLACE "/GX" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
STRING(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
@@ -149,21 +152,47 @@ ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D_CRT_SECURE_NO_DEPRECATE")
IF(EMBED_MANIFESTS)
- # Search for the Manifest tool. CMake will first search it's defaults
- # (CMAKE_FRAMEWORK_PATH, CMAKE_APPBUNDLE_PATH, CMAKE_PROGRAM_PATH and
- # the system PATH) followed by the listed paths which are the current
- # possible defaults and should be updated when necessary. The custom
- # manifests are designed to be compatible with all mt versions.
+ # Search for the tools (mt, makecat, signtool) necessary for embedding
+ # manifests and signing executables with the MySQL AB authenticode cert.
+ #
+ # CMake will first search it's defaults (CMAKE_FRAMEWORK_PATH,
+ # CMAKE_APPBUNDLE_PATH, CMAKE_PROGRAM_PATH and the system PATH) followed
+ # by the listed paths which are the current possible defaults and should be
+ # updated when necessary.
+ #
+ # The custom manifests are designed to be compatible with all mt versions.
+ # The MySQL AB Authenticode certificate is available only internally.
+ # Others should store a single signing certificate in a local cryptographic
+ # service provider and alter the signtool command as necessary.
FIND_PROGRAM(HAVE_MANIFEST_TOOL NAMES mt
PATHS
"$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/VC/bin"
"$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/Common7/Tools/Bin"
"$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/SDK/v2.0/Bin")
+ FIND_PROGRAM(HAVE_CATALOG_TOOL NAMES makecat
+ PATHS
+ "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/Common7/Tools/Bin")
+ FIND_PROGRAM(HAVE_SIGN_TOOL NAMES signtool
+ PATHS
+ "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/Common7/Tools/Bin"
+ "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/SDK/v2.0/Bin")
+
IF(HAVE_MANIFEST_TOOL)
- MESSAGE(STATUS "Found Mainfest Tool. Embedding custom manifests.")
+ MESSAGE(STATUS "Found Mainfest Tool.")
ELSE(HAVE_MANIFEST_TOOL)
MESSAGE(FATAL_ERROR "Manifest tool, mt.exe, can't be found.")
ENDIF(HAVE_MANIFEST_TOOL)
+ IF(HAVE_CATALOG_TOOL)
+ MESSAGE(STATUS "Found Catalog Tool.")
+ ELSE(HAVE_CATALOG_TOOL)
+ MESSAGE(FATAL_ERROR "Catalog tool, makecat.exe, can't be found.")
+ ENDIF(HAVE_CATALOG_TOOL)
+ IF(HAVE_SIGN_TOOL)
+ MESSAGE(STATUS "Found Sign Tool. Embedding custom manifests and signing executables.")
+ ELSE(HAVE_SIGN_TOOL)
+ MESSAGE(FATAL_ERROR "Sign tool, signtool.exe, can't be found.")
+ ENDIF(HAVE_SIGN_TOOL)
+
# Disable automatic manifest generation.
STRING(REPLACE "/MANIFEST" "/MANIFEST:NO" CMAKE_EXE_LINKER_FLAGS
${CMAKE_EXE_LINKER_FLAGS})
diff --git a/Makefile.am b/Makefile.am
index 18477afb398..f53054da111 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -20,6 +20,7 @@ AUTOMAKE_OPTIONS = foreign
# These are built from source in the Docs directory
EXTRA_DIST = INSTALL-SOURCE INSTALL-WIN-SOURCE \
README COPYING EXCEPTIONS-CLIENT CMakeLists.txt
+
SUBDIRS = . include @docs_dirs@ @zlib_dir@ \
@readline_topdir@ sql-common scripts \
@thread_dirs@ pstack \
@@ -148,10 +149,6 @@ test-bt:
-cd mysql-test ; MTR_BUILD_THREAD=auto \
@PERL@ ./mysql-test-run.pl --force --comment=stress --suite=stress
-# Re-enable the "rowlock" suite when bug#28685 is fixed
-# -cd mysql-test ; MTR_BUILD_THREAD=auto \
-# @PERL@ ./mysql-test-run.pl --force --comment=rowlock --suite=row_lock
-
# Re-enable the "jp" suite when bug#28563 is fixed
# -cd mysql-test ; MTR_BUILD_THREAD=auto \
# @PERL@ ./mysql-test-run.pl --force --comment=jp --suite=jp
diff --git a/client/client_priv.h b/client/client_priv.h
index 25241cc8c59..8bc8ef692de 100644
--- a/client/client_priv.h
+++ b/client/client_priv.h
@@ -73,6 +73,10 @@ enum options_client
OPT_SLAP_AUTO_GENERATE_UNIQUE_QUERY_NUM,
OPT_SLAP_PRE_QUERY,
OPT_SLAP_POST_QUERY,
+ OPT_SLAP_PRE_SYSTEM,
+ OPT_SLAP_POST_SYSTEM,
+ OPT_SLAP_COMMIT,
+ OPT_SLAP_DETACH,
OPT_MYSQL_REPLACE_INTO, OPT_BASE64_OUTPUT, OPT_SERVER_ID,
OPT_FIX_TABLE_NAMES, OPT_FIX_DB_NAMES, OPT_SSL_VERIFY_SERVER_CERT,
OPT_DEBUG_INFO, OPT_COLUMN_TYPES, OPT_ERROR_LOG_FILE, OPT_WRITE_BINLOG,
diff --git a/client/mysqldump.c b/client/mysqldump.c
index 0f30ebddacc..cfdde285040 100644
--- a/client/mysqldump.c
+++ b/client/mysqldump.c
@@ -2116,7 +2116,10 @@ static uint get_table_structure(char *table, char *db, char *table_type,
MYSQL_FIELD *field;
my_snprintf(buff, sizeof(buff), "show create table %s", result_table);
- if (mysql_query_with_error_report(mysql, 0, buff))
+
+ if (switch_character_set_results(mysql, "binary") ||
+ mysql_query_with_error_report(mysql, &result, buff) ||
+ switch_character_set_results(mysql, default_charset))
DBUG_RETURN(0);
if (path)
@@ -2147,7 +2150,6 @@ static uint get_table_structure(char *table, char *db, char *table_type,
check_io(sql_file);
}
- result= mysql_store_result(mysql);
field= mysql_fetch_field_direct(result, 0);
if (strcmp(field->name, "View") == 0)
{
@@ -2174,7 +2176,9 @@ static uint get_table_structure(char *table, char *db, char *table_type,
*/
my_snprintf(query_buff, sizeof(query_buff),
"SHOW FIELDS FROM %s", result_table);
- if (mysql_query_with_error_report(mysql, 0, query_buff))
+ if (switch_character_set_results(mysql, "binary") ||
+ mysql_query_with_error_report(mysql, &result, query_buff) ||
+ switch_character_set_results(mysql, default_charset))
{
/*
View references invalid or privileged table/col/fun (err 1356),
@@ -2192,43 +2196,50 @@ static uint get_table_structure(char *table, char *db, char *table_type,
else
my_free(scv_buff, MYF(MY_ALLOW_ZERO_PTR));
- if ((result= mysql_store_result(mysql)))
+ if (mysql_num_rows(result))
{
- if (mysql_num_rows(result))
+ if (opt_drop)
{
- if (opt_drop)
- {
/*
- We have already dropped any table of the same name
- above, so here we just drop the view.
- */
+ We have already dropped any table of the same name above, so
+ here we just drop the view.
+ */
- fprintf(sql_file, "/*!50001 DROP VIEW IF EXISTS %s*/;\n",
- opt_quoted_table);
- check_io(sql_file);
- }
+ fprintf(sql_file, "/*!50001 DROP VIEW IF EXISTS %s*/;\n",
+ opt_quoted_table);
+ check_io(sql_file);
+ }
- fprintf(sql_file, "/*!50001 CREATE TABLE %s (\n", result_table);
- /*
- Get first row, following loop will prepend comma - keeps
- from having to know if the row being printed is last to
- determine if there should be a _trailing_ comma.
- */
- row= mysql_fetch_row(result);
+ fprintf(sql_file,
+ "SET @saved_cs_client = @@character_set_client;\n"
+ "SET character_set_client = utf8;\n"
+ "/*!50001 CREATE TABLE %s (\n",
+ result_table);
- fprintf(sql_file, " %s %s", quote_name(row[0], name_buff, 0),
- row[1]);
+ /*
+ Get first row, following loop will prepend comma - keeps from
+ having to know if the row being printed is last to determine if
+ there should be a _trailing_ comma.
+ */
- while((row= mysql_fetch_row(result)))
- {
- /* col name, col type */
- fprintf(sql_file, ",\n %s %s",
- quote_name(row[0], name_buff, 0), row[1]);
- }
- fprintf(sql_file, "\n) */;\n");
- check_io(sql_file);
+ row= mysql_fetch_row(result);
+
+ fprintf(sql_file, " %s %s", quote_name(row[0], name_buff, 0),
+ row[1]);
+
+ while((row= mysql_fetch_row(result)))
+ {
+ /* col name, col type */
+ fprintf(sql_file, ",\n %s %s",
+ quote_name(row[0], name_buff, 0), row[1]);
}
+ fprintf(sql_file,
+ "\n) */;\n"
+ "SET character_set_client = @saved_cs_client;\n");
+
+ check_io(sql_file);
}
+
mysql_free_result(result);
if (path)
@@ -2239,7 +2250,14 @@ static uint get_table_structure(char *table, char *db, char *table_type,
}
row= mysql_fetch_row(result);
- fprintf(sql_file, "%s;\n", row[1]);
+
+ fprintf(sql_file,
+ "SET @saved_cs_client = @@character_set_client;\n"
+ "SET character_set_client = utf8;\n"
+ "%s;\n"
+ "SET character_set_client = @saved_cs_client;\n",
+ row[1]);
+
check_io(sql_file);
mysql_free_result(result);
}
@@ -3726,11 +3744,12 @@ static int dump_all_tables_in_db(char *database)
{
DYNAMIC_STRING query;
init_dynamic_string_checked(&query, "LOCK TABLES ", 256, 1024);
- for (numrows= 0 ; (table= getTableName(1)) ; numrows++)
+ for (numrows= 0 ; (table= getTableName(1)) ; )
{
char *end= strmov(afterdot, table);
if (include_table(hash_key,end - hash_key))
{
+ numrows++;
dynstr_append_checked(&query, quote_name(table, table_buff, 1));
dynstr_append_checked(&query, " READ /*!32311 LOCAL */,");
}
@@ -3804,6 +3823,11 @@ static my_bool dump_all_views_in_db(char *database)
char *table;
uint numrows;
char table_buff[NAME_LEN*2+3];
+ char hash_key[2*NAME_LEN+2]; /* "db.tablename" */
+ char *afterdot;
+
+ afterdot= strmov(hash_key, database);
+ *afterdot++= '.';
if (init_dumping(database, init_dumping_views))
return 1;
@@ -3813,10 +3837,15 @@ static my_bool dump_all_views_in_db(char *database)
{
DYNAMIC_STRING query;
init_dynamic_string_checked(&query, "LOCK TABLES ", 256, 1024);
- for (numrows= 0 ; (table= getTableName(1)); numrows++)
+ for (numrows= 0 ; (table= getTableName(1)); )
{
- dynstr_append_checked(&query, quote_name(table, table_buff, 1));
- dynstr_append_checked(&query, " READ /*!32311 LOCAL */,");
+ char *end= strmov(afterdot, table);
+ if (include_table(hash_key,end - hash_key))
+ {
+ numrows++;
+ dynstr_append_checked(&query, quote_name(table, table_buff, 1));
+ dynstr_append_checked(&query, " READ /*!32311 LOCAL */,");
+ }
}
if (numrows && mysql_real_query(mysql, query.str, query.length-1))
DB_error(mysql, "when using LOCK TABLES");
@@ -3830,7 +3859,11 @@ static my_bool dump_all_views_in_db(char *database)
/* We shall continue here, if --force was given */
}
while ((table= getTableName(0)))
- get_view_structure(table, database);
+ {
+ char *end= strmov(afterdot, table);
+ if (include_table(hash_key, end - hash_key))
+ get_view_structure(table, database);
+ }
if (opt_xml)
{
fputs("</database>\n", md_result_file);
diff --git a/client/mysqlslap.c b/client/mysqlslap.c
index 546b9dee3f5..aa15141bfdc 100644
--- a/client/mysqlslap.c
+++ b/client/mysqlslap.c
@@ -81,6 +81,7 @@ TODO:
#define UPDATE_TYPE_REQUIRES_PREFIX 3
#define CREATE_TABLE_TYPE 4
#define SELECT_TYPE_REQUIRES_PREFIX 5
+#define DELETE_TYPE_REQUIRES_PREFIX 6
#include "client_priv.h"
#include <mysqld_error.h>
@@ -122,6 +123,8 @@ static char *host= NULL, *opt_password= NULL, *user= NULL,
*user_supplied_pre_statements= NULL,
*user_supplied_post_statements= NULL,
*default_engine= NULL,
+ *pre_system= NULL,
+ *post_system= NULL,
*opt_mysql_unix_port= NULL;
const char *delimiter= "\n";
@@ -142,6 +145,8 @@ const char *auto_generate_sql_type= "mixed";
static unsigned long connect_flags= CLIENT_MULTI_RESULTS;
static int verbose, delimiter_length;
+static uint commit_rate;
+static uint detach_rate;
const char *num_int_cols_opt;
const char *num_char_cols_opt;
/* Yes, we do set defaults here */
@@ -254,6 +259,8 @@ void statement_cleanup(statement *stmt);
void option_cleanup(option_string *stmt);
void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr);
static int run_statements(MYSQL *mysql, statement *stmt);
+int slap_connect(MYSQL *mysql);
+static int run_query(MYSQL *mysql, const char *query, int len);
static const char ALPHANUMERICS[]=
"0123456789ABCDEFGHIJKLMNOPQRSTWXYZabcdefghijklmnopqrstuvwxyz";
@@ -451,6 +458,16 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
if (auto_generate_sql_autoincrement || auto_generate_sql_guid_primary)
generate_primary_key_list(mysql, eptr);
+ if (commit_rate)
+ run_query(mysql, "SET AUTOCOMMIT=0", strlen("SET AUTOCOMMIT=0"));
+
+ if (pre_system)
+ system(pre_system);
+
+ /*
+ Pre statements are always run after all other logic so they can
+ correct/adjust any item that they want.
+ */
if (pre_statements)
run_statements(mysql, pre_statements);
@@ -459,6 +476,9 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
if (post_statements)
run_statements(mysql, post_statements);
+ if (post_system)
+ system(post_system);
+
/* We are finished with this run */
if (auto_generate_sql_autoincrement || auto_generate_sql_guid_primary)
drop_primary_key_list();
@@ -527,6 +547,9 @@ static struct my_option my_long_options[] =
"Number of rows to insert to used in read and write loads (default is 100).\n",
(uchar**) &auto_generate_sql_number, (uchar**) &auto_generate_sql_number,
0, GET_ULL, REQUIRED_ARG, 100, 0, 0, 0, 0, 0},
+ {"commit", OPT_SLAP_COMMIT, "Commit records after X number of statements.",
+ (uchar**) &commit_rate, (uchar**) &commit_rate, 0, GET_UINT, REQUIRED_ARG,
+ 0, 0, 0, 0, 0, 0},
{"compress", 'C', "Use compression in server/client protocol.",
(uchar**) &opt_compress, (uchar**) &opt_compress, 0, GET_BOOL, NO_ARG, 0, 0, 0,
0, 0, 0},
@@ -550,6 +573,9 @@ static struct my_option my_long_options[] =
"Delimiter to use in SQL statements supplied in file or command line.",
(uchar**) &delimiter, (uchar**) &delimiter, 0, GET_STR, REQUIRED_ARG,
0, 0, 0, 0, 0, 0},
+ {"detach", OPT_SLAP_DETACH, "Detach connections after X number of requests.",
+ (uchar**) &detach_rate, (uchar**) &detach_rate, 0, GET_UINT, REQUIRED_ARG,
+ 0, 0, 0, 0, 0, 0},
{"engine", 'e', "Storage engine to use for creating the table.",
(uchar**) &default_engine, (uchar**) &default_engine, 0,
GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -589,11 +615,21 @@ static struct my_option my_long_options[] =
(uchar**) &user_supplied_post_statements,
(uchar**) &user_supplied_post_statements,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+ {"post-system", OPT_SLAP_POST_SYSTEM,
+ "System() string to run after the load has completed.",
+ (uchar**) &post_system,
+ (uchar**) &post_system,
+ 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{"pre-query", OPT_SLAP_PRE_QUERY,
"Query to run or file containing query to run before executing.",
(uchar**) &user_supplied_pre_statements,
(uchar**) &user_supplied_pre_statements,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
+ {"pre-system", OPT_SLAP_PRE_SYSTEM,
+ "System() string to before load has completed.",
+ (uchar**) &pre_system,
+ (uchar**) &pre_system,
+ 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{"preserve-schema", OPT_MYSQL_PRESERVE_SCHEMA,
"Preserve the schema from the mysqlslap run, this happens unless "
"--auto-generate-sql or --create are used.",
@@ -1715,6 +1751,7 @@ run_scheduler(stats *sptr, statement *stmts, uint concur, ulonglong limit)
pthread_handler_t run_task(void *p)
{
ulonglong counter= 0, queries;
+ ulonglong trans_counter;
MYSQL *mysql;
MYSQL_RES *result;
MYSQL_ROW row;
@@ -1749,38 +1786,28 @@ pthread_handler_t run_task(void *p)
if (!opt_only_print)
{
- /* Connect to server */
- static ulong connection_retry_sleep= 100000; /* Microseconds */
- int i, connect_error= 1;
- for (i= 0; i < 10; i++)
- {
- if (mysql_real_connect(mysql, host, user, opt_password,
- create_schema_string,
- opt_mysql_port,
- opt_mysql_unix_port,
- connect_flags))
- {
- /* Connect suceeded */
- connect_error= 0;
- break;
- }
- my_sleep(connection_retry_sleep);
- }
- if (connect_error)
- {
- fprintf(stderr,"%s: Error when connecting to server: %d %s\n",
- my_progname, mysql_errno(mysql), mysql_error(mysql));
+ if (slap_connect(mysql))
goto end;
- }
}
+
DBUG_PRINT("info", ("connected."));
if (verbose >= 3)
printf("connected!\n");
queries= 0;
limit_not_met:
- for (ptr= con->stmt; ptr && ptr->length; ptr= ptr->next)
+ for (ptr= con->stmt, trans_counter= 0;
+ ptr && ptr->length;
+ ptr= ptr->next, trans_counter++)
{
+ if (!opt_only_print && detach_rate && !(trans_counter % detach_rate))
+ {
+ mysql_close(mysql);
+
+ if (slap_connect(mysql))
+ goto end;
+ }
+
/*
We have to execute differently based on query type. This should become a function.
*/
@@ -1837,6 +1864,9 @@ limit_not_met:
}
queries++;
+ if (commit_rate && commit_rate <= trans_counter)
+ run_query(mysql, "COMMIT", strlen("COMMIT"));
+
if (con->limit && queries == con->limit)
goto end;
}
@@ -1845,6 +1875,8 @@ limit_not_met:
goto limit_not_met;
end:
+ if (commit_rate)
+ run_query(mysql, "COMMIT", strlen("COMMIT"));
if (!opt_only_print)
mysql_close(mysql);
@@ -2104,3 +2136,34 @@ statement_cleanup(statement *stmt)
my_free(ptr, MYF(0));
}
}
+
+
+int
+slap_connect(MYSQL *mysql)
+{
+ /* Connect to server */
+ static ulong connection_retry_sleep= 100000; /* Microseconds */
+ int x, connect_error= 1;
+ for (x= 0; x < 10; x++)
+ {
+ if (mysql_real_connect(mysql, host, user, opt_password,
+ create_schema_string,
+ opt_mysql_port,
+ opt_mysql_unix_port,
+ connect_flags))
+ {
+ /* Connect suceeded */
+ connect_error= 0;
+ break;
+ }
+ my_sleep(connection_retry_sleep);
+ }
+ if (connect_error)
+ {
+ fprintf(stderr,"%s: Error when connecting to server: %d %s\n",
+ my_progname, mysql_errno(mysql), mysql_error(mysql));
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/cmd-line-utils/libedit/Makefile.am b/cmd-line-utils/libedit/Makefile.am
index ae6755f1c5c..b7611193aea 100644
--- a/cmd-line-utils/libedit/Makefile.am
+++ b/cmd-line-utils/libedit/Makefile.am
@@ -5,8 +5,8 @@
ASRC = $(srcdir)/vi.c $(srcdir)/emacs.c $(srcdir)/common.c
AHDR = vi.h emacs.h common.h
-INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \
- -I$(srcdir)/../.. -I..
+# Make sure to include stuff from this directory first, to get right "config.h"
+INCLUDES = -I. -I$(top_builddir)/include -I$(top_srcdir)/include
noinst_LIBRARIES = libedit.a
diff --git a/config/ac-macros/ha_ndbcluster.m4 b/config/ac-macros/ha_ndbcluster.m4
index c6327c46f15..60ca92abc10 100644
--- a/config/ac-macros/ha_ndbcluster.m4
+++ b/config/ac-macros/ha_ndbcluster.m4
@@ -277,6 +277,13 @@ AC_DEFUN([MYSQL_SETUP_NDBCLUSTER], [
ndb_bin_am_ldflags=""
fi
+ # building dynamic breaks on AIX. (If you want to try it and get unresolved
+ # __vec__delete2 and some such, try linking against libhC.)
+ case "$host_os" in
+ aix3.* | aix4.0.* | aix4.1.*) ;;
+ *) ndb_bin_am_ldflags="-static";;
+ esac
+
# libndbclient versioning when linked with GNU ld.
if $LD --version 2>/dev/null|grep -q GNU; then
NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/storage/ndb/src/libndb.ver"
diff --git a/config/ac-macros/large_file.m4 b/config/ac-macros/large_file.m4
index 00c2fdf614e..2639cec5fb7 100644
--- a/config/ac-macros/large_file.m4
+++ b/config/ac-macros/large_file.m4
@@ -127,14 +127,9 @@ AC_DEFUN([MYSQL_SYS_LARGEFILE],
hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
ac_cv_sys_largefile_source=1 ;;
esac])
- AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES,
- ac_cv_sys_large_files,
- [Large files support on AIX-style hosts.],
- [case "$host_os" in
- # AIX 4.2 and later
- aix4.[2-9]* | aix4.1[0-9]* | aix[5-9].* | aix[1-9][0-9]*)
- ac_cv_sys_large_files=1 ;;
- esac])
+
+ # AIX 4.2 and later -- do nothing, include standards.h instead.
+ # this goes for both GNU and IBM C and C++ compilers.
fi
])
diff --git a/config/ac-macros/misc.m4 b/config/ac-macros/misc.m4
index 0619a52fbbf..791cd754bc4 100644
--- a/config/ac-macros/misc.m4
+++ b/config/ac-macros/misc.m4
@@ -450,6 +450,29 @@ AC_DEFINE([HAVE_BOOL], [1], [bool is not defined by all C++ compilators])
fi
])dnl
+AC_DEFUN([MYSQL_STACK_DIRECTION],
+ [AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction,
+ [AC_TRY_RUN([#include <stdlib.h>
+ int find_stack_direction ()
+ {
+ static char *addr = 0;
+ auto char dummy;
+ if (addr == 0)
+ {
+ addr = &dummy;
+ return find_stack_direction ();
+ }
+ else
+ return (&dummy > addr) ? 1 : -1;
+ }
+ int main ()
+ {
+ exit (find_stack_direction() < 0);
+ }], ac_cv_c_stack_direction=1, ac_cv_c_stack_direction=-1,
+ ac_cv_c_stack_direction=)])
+ AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction)
+])dnl
+
AC_DEFUN([MYSQL_CHECK_LONGLONG_TO_FLOAT],
[
AC_MSG_CHECKING(if conversion of longlong to float works)
@@ -615,7 +638,6 @@ AC_SUBST(CXX_VERSION)
])
AC_DEFUN([MYSQL_PROG_AR], [
-AC_REQUIRE([MYSQL_CHECK_CXX_VERSION])
case $CXX_VERSION in
MIPSpro*)
AR=$CXX
diff --git a/configure.in b/configure.in
index e2857cf43e3..eb8e7b831db 100644
--- a/configure.in
+++ b/configure.in
@@ -11,7 +11,7 @@ AC_CANONICAL_SYSTEM
# When changing major version number please also check switch statement
# in mysqlbinlog::check_master_version().
AM_INIT_AUTOMAKE(mysql, 5.1.21-beta)
-AM_CONFIG_HEADER(config.h)
+AM_CONFIG_HEADER([include/config.h:config.h.in])
PROTOCOL_VERSION=10
DOT_FRM_VERSION=6
@@ -1792,6 +1792,8 @@ MYSQL_TYPE_ACCEPT
#---END:
# Figure out what type of struct rlimit to use with setrlimit
MYSQL_TYPE_STRUCT_RLIMIT
+# Find where the stack goes
+MYSQL_STACK_DIRECTION
# We want to skip alloca on irix unconditionally. It may work on some version..
MYSQL_FUNC_ALLOCA
# Do struct timespec have members tv_sec or ts_sec
diff --git a/extra/yassl/taocrypt/src/coding.cpp b/extra/yassl/taocrypt/src/coding.cpp
index 68055b3aff4..55fe31831e3 100644
--- a/extra/yassl/taocrypt/src/coding.cpp
+++ b/extra/yassl/taocrypt/src/coding.cpp
@@ -184,7 +184,7 @@ void Base64Decoder::Decode()
{
word32 bytes = coded_.size();
word32 plainSz = bytes - ((bytes + (pemLineSz - 1)) / pemLineSz);
- plainSz = (plainSz * 3 + 3) / 4;
+ plainSz = ((plainSz * 3) / 4) + 3;
decoded_.New(plainSz);
word32 i = 0;
diff --git a/include/Makefile.am b/include/Makefile.am
index 0796341cc91..fe54a7e35e0 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -53,8 +53,11 @@ link_sources:
@yassl_h_ln_cmd@
echo timestamp > link_sources
-my_config.h: ../config.h
- $(CP) ../config.h my_config.h
+# We want both "my_config.h" and "config.h" that are identical, as
+# MySQL sources assumes the name "my_config.h", and 3rd party sources
+# assumes the name "config.h".
+my_config.h: config.h
+ $(CP) config.h my_config.h
# These files should not be included in distributions since they are
# generated by configure from the .h.in files
diff --git a/include/config-netware.h b/include/config-netware.h
index f7f494b519c..e6bddee034e 100644
--- a/include/config-netware.h
+++ b/include/config-netware.h
@@ -112,6 +112,9 @@ extern "C" {
/* signal by closing the sockets */
#define SIGNAL_WITH_VIO_CLOSE 1
+/* On NetWare, stack grows towards lower address */
+#define STACK_DIRECTION -1
+
/* On NetWare, we need to set stack size for threads, otherwise default 16K is used */
#define NW_THD_STACKSIZE 65536
diff --git a/include/config-win.h b/include/config-win.h
index fa5c15b0668..bc2ae60f137 100644
--- a/include/config-win.h
+++ b/include/config-win.h
@@ -250,6 +250,8 @@ inline double ulonglong2double(ulonglong value)
#endif
+#define STACK_DIRECTION -1
+
/* Optimized store functions for Intel x86 */
#ifndef _WIN64
diff --git a/include/my_global.h b/include/my_global.h
index 91860f6e7a9..8b6cdef8daa 100644
--- a/include/my_global.h
+++ b/include/my_global.h
@@ -804,6 +804,10 @@ typedef SOCKET_SIZE_TYPE size_socket;
#define ulong_to_double(X) ((double) (ulong) (X))
#define SET_STACK_SIZE(X) /* Not needed on real machines */
+#ifndef STACK_DIRECTION
+#error "please add -DSTACK_DIRECTION=1 or -1 to your CPPFLAGS"
+#endif
+
#if !defined(HAVE_STRTOK_R)
#define strtok_r(A,B,C) strtok((A),(B))
#endif
diff --git a/include/mysql.h b/include/mysql.h
index 489813bc154..da97531509f 100644
--- a/include/mysql.h
+++ b/include/mysql.h
@@ -27,6 +27,10 @@
#ifndef _mysql_h
#define _mysql_h
+#ifdef _AIX /* large-file support will break without this */
+#include <standards.h>
+#endif
+
#ifdef __CYGWIN__ /* CYGWIN implements a UNIX API */
#undef WIN
#undef _WIN
diff --git a/mysql-test/Makefile.am b/mysql-test/Makefile.am
index c783158b46c..e1b0f29e253 100644
--- a/mysql-test/Makefile.am
+++ b/mysql-test/Makefile.am
@@ -28,9 +28,6 @@ EXTRA_DIST = $(EXTRA_SCRIPTS) suite
GENSCRIPTS = mysql-test-run-shell install_test_db mtr mysql-test-run
PRESCRIPTS = mysql-test-run.pl mysql-stress-test.pl
test_SCRIPTS = $(GENSCRIPTS) $(PRESCRIPTS)
-test_DATA = std_data/client-key.pem std_data/client-cert.pem \
- std_data/cacert.pem std_data/server-cert.pem \
- std_data/server-key.pem
CLEANFILES = $(GENSCRIPTS)
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include -I..
diff --git a/mysql-test/include/mix1.inc b/mysql-test/include/mix1.inc
index 591971a32a4..32a3e6b3ebd 100644
--- a/mysql-test/include/mix1.inc
+++ b/mysql-test/include/mix1.inc
@@ -814,6 +814,38 @@ create table t1 (a int) engine=innodb;
alter table t1 alter a set default 1;
drop table t1;
+--echo
+--echo Bug#24918 drop table and lock / inconsistent between
+--echo perm and temp tables
+--echo
+--echo Check transactional tables under LOCK TABLES
+--echo
+--disable_warnings
+drop table if exists t24918, t24918_tmp, t24918_trans, t24918_trans_tmp,
+t24918_access;
+--enable_warnings
+create table t24918_access (id int);
+create table t24918 (id int) engine=myisam;
+create temporary table t24918_tmp (id int) engine=myisam;
+create table t24918_trans (id int) engine=innodb;
+create temporary table t24918_trans_tmp (id int) engine=innodb;
+
+lock table t24918 write, t24918_tmp write, t24918_trans write, t24918_trans_tmp write;
+drop table t24918;
+--error ER_TABLE_NOT_LOCKED
+select * from t24918_access;
+drop table t24918_trans;
+--error ER_TABLE_NOT_LOCKED
+select * from t24918_access;
+drop table t24918_trans_tmp;
+--error ER_TABLE_NOT_LOCKED
+select * from t24918_access;
+drop table t24918_tmp;
+--error ER_TABLE_NOT_LOCKED
+select * from t24918_access;
+unlock tables;
+
+drop table t24918_access;
#
# Bug #28591: MySQL need not sort the records in case of ORDER BY
# primary_key on InnoDB table
@@ -898,10 +930,17 @@ DISCONNECT con2;
DROP PROCEDURE p1;
DROP TABLE t1;
+#
+# Bug #28125: ERROR 2013 when adding index.
+#
+create table t1(a text) engine=innodb default charset=utf8;
+insert into t1 values('aaa');
+alter table t1 add index(a(1024));
+show create table t1;
+drop table t1;
--echo End of 5.0 tests
-
# Fix for BUG#19243 "wrong LAST_INSERT_ID() after ON DUPLICATE KEY
# UPDATE": if the row is updated, it's like a regular UPDATE:
# LAST_INSERT_ID() is not affected.
diff --git a/mysql-test/r/ddl_i18n_koi8r.result b/mysql-test/r/ddl_i18n_koi8r.result
index 9e5931330e2..3d38319df21 100644
--- a/mysql-test/r/ddl_i18n_koi8r.result
+++ b/mysql-test/r/ddl_i18n_koi8r.result
@@ -1689,12 +1689,18 @@ DELETE FROM mysqltest2.log|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
USE `mysqltest1`;
+SET @saved_cs_client = @@character_set_client;
+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;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`c` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+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 */ ;
@@ -1762,12 +1768,18 @@ ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
USE `mysqltest2`;
+SET @saved_cs_client = @@character_set_client;
+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;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`c` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+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 */ ;
diff --git a/mysql-test/r/ddl_i18n_utf8.result b/mysql-test/r/ddl_i18n_utf8.result
index d74d014d755..b8e690bfeb7 100644
--- a/mysql-test/r/ddl_i18n_utf8.result
+++ b/mysql-test/r/ddl_i18n_utf8.result
@@ -1689,12 +1689,18 @@ DELETE FROM mysqltest2.log|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp866 */;
USE `mysqltest1`;
+SET @saved_cs_client = @@character_set_client;
+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;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`c` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+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 */ ;
@@ -1762,12 +1768,18 @@ ALTER DATABASE mysqltest1 CHARACTER SET cp866 COLLATE cp866_general_ci ;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqltest2` /*!40100 DEFAULT CHARACTER SET cp866 */;
USE `mysqltest2`;
+SET @saved_cs_client = @@character_set_client;
+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;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`c` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+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 */ ;
diff --git a/mysql-test/r/events_bugs.result b/mysql-test/r/events_bugs.result
index 557c8e0b477..1bfa0e84f72 100644
--- a/mysql-test/r/events_bugs.result
+++ b/mysql-test/r/events_bugs.result
@@ -611,3 +611,10 @@ id ev_nm ev_cnt
DROP TABLE event_log;
SET GLOBAL event_scheduler = OFF;
DROP DATABASE events_test;
+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;
diff --git a/mysql-test/r/federated.result b/mysql-test/r/federated.result
index cfb445e9427..ca936cd5fde 100644
--- a/mysql-test/r/federated.result
+++ b/mysql-test/r/federated.result
@@ -1844,6 +1844,43 @@ 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))
diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result
index 2d59a32218c..044e1860e02 100644
--- a/mysql-test/r/func_time.result
+++ b/mysql-test/r/func_time.result
@@ -840,11 +840,11 @@ 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)`
-SET @TMP=NOW();
+SET @TMP='2007-08-01 12:22:49';
CREATE TABLE t1 (d DATETIME);
-INSERT INTO t1 VALUES (NOW());
-INSERT INTO t1 VALUES (NOW());
-INSERT INTO t1 VALUES (NOW());
+INSERT INTO t1 VALUES ('2007-08-01 12:22:59');
+INSERT INTO t1 VALUES ('2007-08-01 12:23:01');
+INSERT INTO t1 VALUES ('2007-08-01 12:23:20');
SELECT count(*) FROM t1 WHERE d>FROM_DAYS(TO_DAYS(@TMP)) AND d<=FROM_DAYS(TO_DAYS(@TMP)+1);
count(*)
3
diff --git a/mysql-test/r/im_options.result b/mysql-test/r/im_options.result
index 3225db0c8c5..22bd5d5bdf6 100644
--- a/mysql-test/r/im_options.result
+++ b/mysql-test/r/im_options.result
@@ -37,9 +37,10 @@ log-slow-queries option_value
language option_value
character-sets-dir option_value
basedir option_value
+shutdown-delay option_value
skip-stack-trace option_value
-skip-innodb option_value
-skip-ndbcluster option_value
+loose-skip-innodb option_value
+loose-skip-ndbcluster option_value
nonguarded option_value
log-output option_value
SET mysqld2.server_id = 2;
@@ -57,9 +58,10 @@ log-slow-queries option_value
language option_value
character-sets-dir option_value
basedir option_value
+shutdown-delay option_value
skip-stack-trace option_value
-skip-innodb option_value
-skip-ndbcluster option_value
+loose-skip-innodb option_value
+loose-skip-ndbcluster option_value
nonguarded option_value
log-output option_value
server_id option_value
diff --git a/mysql-test/r/innodb_mysql.result b/mysql-test/r/innodb_mysql.result
index 273374d016b..26000fa27b7 100644
--- a/mysql-test/r/innodb_mysql.result
+++ b/mysql-test/r/innodb_mysql.result
@@ -755,7 +755,7 @@ 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 765 bytes
+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;
@@ -814,6 +814,34 @@ drop table if exists t1;
create table t1 (a int) engine=innodb;
alter table t1 alter a set default 1;
drop table t1;
+
+Bug#24918 drop table and lock / inconsistent between
+perm and temp tables
+
+Check transactional tables under LOCK TABLES
+
+drop table if exists t24918, t24918_tmp, t24918_trans, t24918_trans_tmp,
+t24918_access;
+create table t24918_access (id int);
+create table t24918 (id int) engine=myisam;
+create temporary table t24918_tmp (id int) engine=myisam;
+create table t24918_trans (id int) engine=innodb;
+create temporary table t24918_trans_tmp (id int) engine=innodb;
+lock table t24918 write, t24918_tmp write, t24918_trans write, t24918_trans_tmp write;
+drop table t24918;
+select * from t24918_access;
+ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
+drop table t24918_trans;
+select * from t24918_access;
+ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
+drop table t24918_trans_tmp;
+select * from t24918_access;
+ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
+drop table t24918_tmp;
+select * from t24918_access;
+ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
+unlock tables;
+drop table t24918_access;
CREATE TABLE t1 (a int, b int, PRIMARY KEY (a), KEY bkey (b)) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1,2),(3,2),(2,2),(4,2),(5,2),(6,2),(7,2),(8,2);
INSERT INTO t1 SELECT a + 8, 2 FROM t1;
@@ -1082,6 +1110,19 @@ CALL p1();
CALL p1();
DROP PROCEDURE p1;
DROP TABLE t1;
+create table t1(a text) engine=innodb default charset=utf8;
+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` (
+ `a` text,
+ KEY `a` (`a`(255))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+drop table t1;
End of 5.0 tests
CREATE TABLE `t2` (
`k` int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/log_state.result b/mysql-test/r/log_state.result
index 38b3ebd6e98..0c6be16b9b7 100644
--- a/mysql-test/r/log_state.result
+++ b/mysql-test/r/log_state.result
@@ -153,3 +153,25 @@ 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 @old_general_log_state = @@global.general_log;
+SET @old_slow_log_state = @@global.slow_query_log;
+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_state;
+SET GLOBAL slow_query_log = @old_slow_log_state;
diff --git a/mysql-test/r/log_tables.result b/mysql-test/r/log_tables.result
index ce3dabe3a56..9e67d328849 100644
--- a/mysql-test/r/log_tables.result
+++ b/mysql-test/r/log_tables.result
@@ -29,30 +29,83 @@ 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 write-lock a log table. Only read access is possible
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.slow_log WRITE;
-ERROR HY000: You can't write-lock a log table. Only read access is possible
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.general_log READ;
-ERROR HY000: You can't use usual read lock with log tables. Try READ LOCAL instead
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.slow_log READ;
-ERROR HY000: You can't use usual read lock with log tables. Try READ LOCAL instead
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.slow_log READ LOCAL, mysql.general_log READ LOCAL;
-unlock tables;
-lock tables 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,
+ `thread_id` int(11) DEFAULT NULL,
+ `server_id` int(11) DEFAULT NULL,
+ `command_type` varchar(64) DEFAULT NULL,
+ `argument` mediumtext
+) 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
+user_host mediumtext YES NULL
+thread_id int(11) YES NULL
+server_id int(11) YES NULL
+command_type varchar(64) YES NULL
+argument mediumtext YES 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) DEFAULT NULL,
+ `last_insert_id` int(11) DEFAULT NULL,
+ `insert_id` int(11) DEFAULT NULL,
+ `server_id` int(11) DEFAULT 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
+user_host mediumtext NO
+query_time time NO
+lock_time time NO
+rows_sent int(11) NO
+rows_examined int(11) NO
+db varchar(512) YES NULL
+last_insert_id int(11) YES NULL
+insert_id int(11) YES NULL
+server_id int(11) YES NULL
+sql_text mediumtext NO
flush logs;
-unlock tables;
-select "Mark that we woke up from flush logs in the test"
- as "test passed";
-test passed
-Mark that we woke up from flush logs in the test
-lock tables mysql.general_log READ LOCAL;
-truncate mysql.general_log;
-unlock tables;
-select "Mark that we woke up from TRUNCATE in the test"
- as "test passed";
-test passed
-Mark that we woke up from TRUNCATE in the test
-use test;
+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 utf8;
create table bug16905 (s char(15) character set utf8 default 'пуÑто');
@@ -71,7 +124,7 @@ 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 test 0 0 1 select sleep(2)
+TIMESTAMP USER_HOST QUERY_TIME 00:00:00 1 0 mysql 0 0 1 select sleep(2)
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;
@@ -158,15 +211,13 @@ 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 write-lock a log table. Only read access is possible
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.slow_log WRITE;
-ERROR HY000: You can't write-lock a log table. Only read access is possible
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.general_log READ;
-ERROR HY000: You can't use usual read lock with log tables. Try READ LOCAL instead
+ERROR HY000: You can't use locks with log tables.
lock tables mysql.slow_log READ;
-ERROR HY000: You can't use usual read lock with log tables. Try READ LOCAL instead
-lock tables mysql.slow_log READ LOCAL, mysql.general_log READ LOCAL;
-unlock tables;
+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;
@@ -217,6 +268,7 @@ 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;
use mysql;
RENAME TABLE general_log TO renamed_general_log;
@@ -258,9 +310,9 @@ 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 HY000: Cannot activate 'general' log
+ERROR 42S02: Table 'mysql.general_log' doesn't exist
set global slow_query_log='ON';
-ERROR HY000: Cannot activate 'slow query' log
+ERROR 42S02: Table 'mysql.slow_log' doesn't exist
RENAME TABLE general_log2 TO general_log;
RENAME TABLE slow_log2 TO slow_log;
set global general_log='ON';
@@ -355,3 +407,197 @@ SET SESSION long_query_time =@old_long_query_time;
FLUSH LOGS;
ALTER TABLE mysql.slow_log DROP COLUMN seq;
ALTER TABLE mysql.slow_log ENGINE = CSV;
+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 @old_general_log_state = @@global.general_log;
+SET @old_slow_log_state = @@global.slow_query_log;
+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_state;
+SET GLOBAL slow_query_log = @old_slow_log_state;
diff --git a/mysql-test/r/mysqlbinlog.result b/mysql-test/r/mysqlbinlog.result
index 7a76e45ee10..f10ae4b4df5 100644
--- a/mysql-test/r/mysqlbinlog.result
+++ b/mysql-test/r/mysqlbinlog.result
@@ -319,6 +319,13 @@ INSERT INTO t1 VALUES ('0123456789');
flush logs;
DROP TABLE t1;
# Query thread_id=REMOVED exec_time=REMOVED error_code=REMOVED
+flush logs;
+create table t1(a int);
+insert into t1 values(connection_id());
+flush logs;
+drop table t1;
+1
+drop table t1;
End of 5.0 tests
flush logs;
End of 5.1 tests
diff --git a/mysql-test/r/mysqldump-max.result b/mysql-test/r/mysqldump-max.result
index e78fc4d386a..2d118092a2c 100644
--- a/mysql-test/r/mysqldump-max.result
+++ b/mysql-test/r/mysqldump-max.result
@@ -93,55 +93,73 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t1` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t2` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
DROP TABLE IF EXISTS `t3`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t3` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t3` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t3` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t3` ENABLE KEYS */;
DROP TABLE IF EXISTS `t4`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t4` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t4` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t4` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t4` ENABLE KEYS */;
DROP TABLE IF EXISTS `t5`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t5` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t5` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t5` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t5` ENABLE KEYS */;
DROP TABLE IF EXISTS `t6`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t6` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t6` DISABLE KEYS */;
INSERT IGNORE INTO `t6` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
@@ -172,55 +190,73 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
INSERT DELAYED INTO `t1` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
INSERT DELAYED INTO `t2` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
DROP TABLE IF EXISTS `t3`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t3` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t3` DISABLE KEYS */;
INSERT DELAYED INTO `t3` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t3` ENABLE KEYS */;
DROP TABLE IF EXISTS `t4`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t4` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t4` DISABLE KEYS */;
INSERT DELAYED INTO `t4` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t4` ENABLE KEYS */;
DROP TABLE IF EXISTS `t5`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t5` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=ARCHIVE DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t5` DISABLE KEYS */;
INSERT DELAYED INTO `t5` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
/*!40000 ALTER TABLE `t5` ENABLE KEYS */;
DROP TABLE IF EXISTS `t6`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t6` (
`id` int(8) DEFAULT NULL,
`name` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t6` DISABLE KEYS */;
INSERT INTO `t6` VALUES (1,'first value'),(2,'first value'),(3,'first value'),(4,'first value'),(5,'first value');
diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result
index 1fa18482b9c..58bcac42f9c 100644
--- a/mysql-test/r/mysqldump.result
+++ b/mysql-test/r/mysqldump.result
@@ -29,9 +29,12 @@ DROP TABLE t1;
CREATE TABLE t1 (a decimal(64, 20));
INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
("0987654321098765432109876543210987654321");
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` decimal(64,20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
INSERT INTO `t1` VALUES ('1234567890123456789012345678901234567890.00000000000000000000'),('987654321098765432109876543210987654321.00000000000000000000');
DROP TABLE t1;
#
@@ -41,9 +44,12 @@ CREATE TABLE t1 (a double);
INSERT INTO t1 VALUES ('-9e999999');
Warnings:
Warning 1264 Out of range value for column 'a' at row 1
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` double DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
INSERT INTO `t1` VALUES (RES);
DROP TABLE t1;
#
@@ -59,15 +65,21 @@ INSERT INTO t1 VALUES ('1.2345', 2.3456);
INSERT INTO t1 VALUES ("1.2345", 2.3456);
ERROR 42S22: Unknown column '1.2345' in 'field list'
SET SQL_MODE=@OLD_SQL_MODE;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` decimal(10,5) DEFAULT NULL,
`b` float DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+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);
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` decimal(10,5) DEFAULT NULL,
`b` float DEFAULT NULL
);
+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 @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
@@ -81,10 +93,13 @@ INSERT INTO `t1` VALUES ('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456)
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` decimal(10,5) DEFAULT NULL,
`b` float DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -107,10 +122,13 @@ UNLOCK TABLES;
/*!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 */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` decimal(10,5) DEFAULT NULL,
`b` float DEFAULT NULL
);
+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);
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -186,9 +204,12 @@ INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=koi8r;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -219,9 +240,12 @@ INSERT INTO t1 VALUES (1), (2);
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,MYSQL40' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) TYPE=MyISAM;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -242,9 +266,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,MYSQL323' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) TYPE=MyISAM;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -263,9 +290,12 @@ DROP TABLE t1;
# Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
#
create table ```a` (i int);
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE ```a` (
`i` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
drop table ```a`;
#
# Bug #2591 "mysqldump quotes names inconsistently"
@@ -283,9 +313,12 @@ create table t1(a int);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -308,9 +341,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS "t1";
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE "t1" (
"a" int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES "t1" WRITE;
/*!40000 ALTER TABLE "t1" DISABLE KEYS */;
@@ -336,9 +372,12 @@ set global sql_mode='ANSI_QUOTES';
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -361,9 +400,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS "t1";
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE "t1" (
"a" int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES "t1" WRITE;
/*!40000 ALTER TABLE "t1" DISABLE KEYS */;
@@ -393,9 +435,12 @@ insert into t1 values (1),(2),(3);
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -484,9 +529,12 @@ INSERT INTO t1 VALUES (_latin1 'ÄÖÜß');
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -517,9 +565,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,MYSQL323' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` char(10) DEFAULT NULL
) TYPE=MyISAM;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -540,9 +591,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,MYSQL323' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` char(10) DEFAULT NULL
) TYPE=MyISAM;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -563,9 +617,12 @@ UNLOCK TABLES;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,MYSQL323' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` char(10) DEFAULT NULL
) TYPE=MyISAM;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -599,9 +656,12 @@ INSERT INTO t2 VALUES (4),(5),(6);
/*!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 `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
@@ -637,9 +697,12 @@ INSERT INTO `t1` VALUES (0x602010000280100005E71A);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -675,9 +738,12 @@ INSERT INTO t1 VALUES (4),(5),(6);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -706,9 +772,12 @@ UNLOCK TABLES;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
INSERT DELAYED IGNORE INTO `t1` VALUES (1),(2),(3),(4),(5),(6);
@@ -1072,6 +1141,8 @@ insert into t1 (F_8d3bba7425e7c98c50f52ca1b52d3735) values (1);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`F_c4ca4238a0b923820dcc509a6f75849b` int(11) DEFAULT NULL,
`F_c81e728d9d4c2f636f067f89cc14862c` int(11) DEFAULT NULL,
@@ -1404,6 +1475,7 @@ CREATE TABLE `t1` (
`F_6faa8040da20ef399b63a72d0e4ab575` int(11) DEFAULT NULL,
`F_fe73f687e5bc5280214e0486b273a5f9` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -1444,9 +1516,12 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -1485,13 +1560,19 @@ INSERT INTO t2 VALUES (1), (2);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -1514,13 +1595,19 @@ CREATE TABLE `t2` (
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -1720,17 +1807,26 @@ create table t3(a int);
/*!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 `t3`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t3` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
@@ -1760,9 +1856,12 @@ mysqldump: Got error: 1064: You have an error in your SQL syntax; check the manu
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
@@ -1793,12 +1892,15 @@ insert into t1 values (0815, 4711, 2006);
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS "t1";
+SET @saved_cs_client = @@character_set_client;
+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")
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES "t1" WRITE;
/*!40000 ALTER TABLE "t1" DISABLE KEYS */;
@@ -1824,12 +1926,15 @@ UNLOCK TABLES;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+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`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -1875,10 +1980,13 @@ create view v2 as select * from t2 where a like 'a%' with check option;
/*!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 `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` varchar(30) DEFAULT NULL,
KEY `a` (`a`(5))
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
@@ -1887,9 +1995,12 @@ 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)
) */;
+SET character_set_client = @saved_cs_client;
/*!50001 DROP TABLE `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
@@ -1968,9 +2079,12 @@ create view v1 as select * from t1;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -1978,9 +2092,12 @@ 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)
) */;
+SET character_set_client = @saved_cs_client;
/*!50001 DROP TABLE `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
@@ -2034,10 +2151,13 @@ create view v2 as select * from t2 where a like 'a%' with check option;
/*!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 `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` varchar(30) DEFAULT NULL,
KEY `a` (`a`(5))
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
@@ -2046,9 +2166,12 @@ 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)
) */;
+SET character_set_client = @saved_cs_client;
/*!50001 DROP TABLE `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
@@ -2095,9 +2218,12 @@ INSERT INTO t1 VALUES ('\'');
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` char(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2138,11 +2264,14 @@ select v3.a from v3, v1 where v1.a=v3.a and v3.b=3 limit 1;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL,
`c` varchar(30) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2151,23 +2280,32 @@ 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)
) */;
+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)
) */;
+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)
) */;
+SET character_set_client = @saved_cs_client;
/*!50001 DROP TABLE `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
@@ -2285,10 +2423,13 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2354,9 +2495,12 @@ DELIMITER ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
@@ -2408,10 +2552,13 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` bigint(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2419,9 +2566,12 @@ INSERT INTO `t1` VALUES (1,NULL),(2,NULL),(4,NULL),(11,NULL);
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
UNLOCK TABLES;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
@@ -2545,9 +2695,12 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2693,10 +2846,13 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`d` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY `d` (`d`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2727,10 +2883,13 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`d` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY `d` (`d`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2777,9 +2936,12 @@ a2
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
DROP TABLE IF EXISTS "t1 test";
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE "t1 test" (
"a1" int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES "t1 test" WRITE;
/*!40000 ALTER TABLE "t1 test" DISABLE KEYS */;
@@ -2803,9 +2965,12 @@ DELIMITER ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
DROP TABLE IF EXISTS "t2 test";
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE "t2 test" (
"a2" int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES "t2 test" WRITE;
/*!40000 ALTER TABLE "t2 test" DISABLE KEYS */;
@@ -2854,11 +3019,14 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` varchar(32) DEFAULT NULL,
`c` varchar(32) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -2867,25 +3035,34 @@ 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)
) */;
+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)
) */;
+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)
) */;
+SET character_set_client = @saved_cs_client;
USE `test`;
/*!50001 DROP TABLE `v0`*/;
@@ -2973,9 +3150,12 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET l
USE `test`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3029,10 +3209,13 @@ insert into t1 values ('','');
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` binary(1) DEFAULT NULL,
`b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3061,10 +3244,13 @@ UNLOCK TABLES;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` binary(1) DEFAULT NULL,
`b` blob
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3237,9 +3423,12 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqldump_test_db` /*!40100 DEFAULT CH
USE `mysqldump_test_db`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3248,9 +3437,12 @@ 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)
) */;
+SET character_set_client = @saved_cs_client;
USE `mysqldump_test_db`;
/*!50001 DROP TABLE `v1`*/;
@@ -3293,18 +3485,24 @@ create view nasishnasifu as select mysqldump_tables.basetable.id from mysqldump_
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqldump_tables` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `mysqldump_tables`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `basetable` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`tag` varchar(64) DEFAULT NULL,
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
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
) */;
+SET character_set_client = @saved_cs_client;
USE `mysqldump_tables`;
@@ -3461,22 +3659,31 @@ CREATE TABLE t1 (a int) ENGINE=merge UNION=(t2, t3);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 UNION=(`t2`,`t3`);
+SET character_set_client = @saved_cs_client;
DROP TABLE IF EXISTS `t2`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t2` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t2` WRITE;
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
UNLOCK TABLES;
DROP TABLE IF EXISTS `t3`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t3` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t3` WRITE;
/*!40000 ALTER TABLE `t3` DISABLE KEYS */;
@@ -3556,10 +3763,13 @@ drop database mysqldump_test_db;
#
CREATE TABLE t1 (c1 INT, c2 LONGBLOB);
INSERT INTO t1 SET c1=11, c2=REPEAT('q',509);
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`c1` int(11) DEFAULT NULL,
`c2` longblob
);
+SET character_set_client = @saved_cs_client;
INSERT INTO `t1` VALUES (11,0x7171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171);
DROP TABLE t1;
#
@@ -3614,10 +3824,13 @@ INSERT INTO t1 VALUES (3,4), (4,5);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3881,9 +4094,12 @@ CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysqldump_test_db` /*!40100 DEFAULT CH
USE `mysqldump_test_db`;
DROP TABLE IF EXISTS `t1`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`id` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -3892,9 +4108,12 @@ 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)
) */;
+SET character_set_client = @saved_cs_client;
USE `mysqldump_test_db`;
/*!50001 DROP TABLE `v1`*/;
@@ -3925,5 +4144,38 @@ 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;
+#
# End of 5.1 tests
#
diff --git a/mysql-test/r/mysqlslap.result b/mysql-test/r/mysqlslap.result
index bca7919d78c..cc8bc3dac31 100644
--- a/mysql-test/r/mysqlslap.result
+++ b/mysql-test/r/mysqlslap.result
@@ -167,3 +167,47 @@ SHOW TABLES;
select * from t1;
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;
+select * from t1;
+select * from t2;
+COMMIT;
+select * from t1;
+select * from t2;
+COMMIT;
+select * from t1;
+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;
+select * from t1;
+select * from t2;
+COMMIT;
+select * from t1;
+select * from t2;
+COMMIT;
+select * from t1;
+select * from t2;
+COMMIT;
+COMMIT;
+SHOW TABLES;
+DROP SCHEMA IF EXISTS `mysqlslap`;
diff --git a/mysql-test/r/openssl_1.result b/mysql-test/r/openssl_1.result
index 5e29e30732f..a042d0a5dc3 100644
--- a/mysql-test/r/openssl_1.result
+++ b/mysql-test/r/openssl_1.result
@@ -99,9 +99,12 @@ INSERT INTO t1 VALUES (1), (2);
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -130,9 +133,12 @@ UNLOCK TABLES;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
@@ -161,9 +167,12 @@ UNLOCK TABLES;
/*!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`;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
);
+SET character_set_client = @saved_cs_client;
LOCK TABLES `t1` WRITE;
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result
index 9214d470b37..341a6b7cd43 100644
--- a/mysql-test/r/ps.result
+++ b/mysql-test/r/ps.result
@@ -1850,61 +1850,57 @@ create procedure proc_1() flush tables;
flush tables;
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
call proc_1();
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
call proc_1();
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
call proc_1();
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
flush tables;
@@ -1922,54 +1918,50 @@ select Host, Db from mysql.host limit 0;
Host Db
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
-mysql host 0 0
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 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
execute abc;
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
execute abc;
show open tables from mysql;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+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 general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql host 0 0
mysql user 0 0
flush tables;
diff --git a/mysql-test/r/show_check.result b/mysql-test/r/show_check.result
index f4b5f2689f6..669043b5656 100644
--- a/mysql-test/r/show_check.result
+++ b/mysql-test/r/show_check.result
@@ -251,14 +251,13 @@ drop table t1;
flush tables;
show open tables;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
create table t1(n int);
insert into t1 values (1);
show open tables;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
test t1 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;
@@ -672,24 +671,23 @@ SELECT 1 FROM mysql.db, mysql.proc, mysql.user, mysql.time_zone, mysql.time_zone
1
SHOW OPEN TABLES;
Database Table In_use Name_locked
-mysql proc 0 0
+mysql db 0 0
test urkunde 0 0
mysql time_zone 0 0
-mysql db 0 0
+mysql general_log 0 0
test txt1 0 0
-mysql slow_log 1 0
+mysql proc 0 0
test tyt2 0 0
-mysql general_log 1 0
mysql user 0 0
mysql time_zone_name 0 0
SHOW OPEN TABLES FROM mysql;
Database Table In_use Name_locked
-mysql proc 0 0
-mysql time_zone 0 0
mysql db 0 0
-mysql slow_log 1 0
-mysql general_log 1 0
+mysql time_zone 0 0
+mysql general_log 0 0
+mysql slow_log 0 0
mysql user 0 0
+mysql proc 0 0
mysql time_zone_name 0 0
SHOW OPEN TABLES FROM mysql LIKE 'u%';
Database Table In_use Name_locked
@@ -702,16 +700,15 @@ test tyt2 0 0
mysql time_zone_name 0 0
SHOW OPEN TABLES LIKE '%o%';
Database Table In_use Name_locked
-mysql proc 0 0
mysql time_zone 0 0
-mysql slow_log 1 0
-mysql general_log 1 0
+mysql general_log 0 0
+mysql slow_log 0 0
+mysql proc 0 0
mysql time_zone_name 0 0
FLUSH TABLES;
SHOW OPEN TABLES;
Database Table In_use Name_locked
-mysql general_log 1 0
-mysql slow_log 1 0
+mysql general_log 0 0
DROP TABLE txt1;
DROP TABLE tyt2;
DROP TABLE urkunde;
@@ -1206,6 +1203,26 @@ DROP TABLE t1;
DROP VIEW v1;
DROP PROCEDURE p1;
DROP FUNCTION f1;
+set names koi8r;
+DROP DATABASE IF EXISTS mysqltest1;
+CREATE DATABASE mysqltest1;
+use mysqltest1;
+CREATE TABLE t1(ËÏÌÏÎËÁ1 INT);
+
+---> Dumping mysqltest1 to show_check.mysqltest1.sql
+
+
+DROP DATABASE mysqltest1;
+
+
+---> Restoring mysqltest1...
+SHOW CREATE TABLE mysqltest1.t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `ËÏÌÏÎËÁ1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP DATABASE mysqltest1;
+use test;
flush status;
show variables like "log_queries_not_using_indexes";
Variable_name Value
diff --git a/mysql-test/r/sp-prelocking.result b/mysql-test/r/sp-prelocking.result
index c19bd1abd26..186b2c05d34 100644
--- a/mysql-test/r/sp-prelocking.result
+++ b/mysql-test/r/sp-prelocking.result
@@ -289,4 +289,34 @@ create table t1 select f_bug22427() as i;
ERROR 42S01: Table 't1' already exists
drop table t1;
drop function f_bug22427;
+#
+# Bug #29929 LOCK TABLES does not pre-lock tables used in triggers of the locked tables
+#
+DROP table IF EXISTS t1,t2;
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c2 INT);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+CREATE TRIGGER t1_ai AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+UPDATE t2 SET c2= c2 + 1;
+END//
+# Take a table lock on t1.
+# This should pre-lock t2 through the trigger.
+LOCK TABLE t1 WRITE;
+INSERT INTO t1 VALUES (3);
+UNLOCK TABLES;
+LOCK TABLE t1 READ;
+INSERT INTO t2 values(4);
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
+UNLOCK TABLES;
+SELECT * FROM t1;
+c1
+1
+3
+SELECT * FROM t2;
+c2
+3
+DROP TRIGGER t1_ai;
+DROP TABLE t1, t2;
End of 5.0 tests
diff --git a/mysql-test/r/ssl_8k_key.result b/mysql-test/r/ssl_8k_key.result
new file mode 100644
index 00000000000..b33a1d2854f
--- /dev/null
+++ b/mysql-test/r/ssl_8k_key.result
@@ -0,0 +1,2 @@
+Variable_name Value
+Ssl_cipher DHE-RSA-AES256-SHA
diff --git a/mysql-test/r/status.result b/mysql-test/r/status.result
index b6dcbc251d7..8f10625744b 100644
--- a/mysql-test/r/status.result
+++ b/mysql-test/r/status.result
@@ -1,11 +1,11 @@
flush status;
show status like 'Table_lock%';
Variable_name Value
-Table_locks_immediate 0
+Table_locks_immediate 1
Table_locks_waited 0
select * from information_schema.session_status where variable_name like 'Table_lock%';
VARIABLE_NAME VARIABLE_VALUE
-TABLE_LOCKS_IMMEDIATE 0
+TABLE_LOCKS_IMMEDIATE 2
TABLE_LOCKS_WAITED 0
SET SQL_LOG_BIN=0;
drop table if exists t1;
@@ -18,11 +18,11 @@ update t1 set n = 3;
unlock tables;
show status like 'Table_lock%';
Variable_name Value
-Table_locks_immediate 3
+Table_locks_immediate 17
Table_locks_waited 1
select * from information_schema.session_status where variable_name like 'Table_lock%';
VARIABLE_NAME VARIABLE_VALUE
-TABLE_LOCKS_IMMEDIATE 3
+TABLE_LOCKS_IMMEDIATE 18
TABLE_LOCKS_WAITED 1
drop table t1;
select 1;
@@ -97,7 +97,7 @@ Variable_name Value
Com_show_status 3
show status like 'hand%write%';
Variable_name Value
-Handler_write 0
+Handler_write 5
show status like '%tmp%';
Variable_name Value
Created_tmp_disk_tables 0
@@ -105,7 +105,7 @@ Created_tmp_files 0
Created_tmp_tables 0
show status like 'hand%write%';
Variable_name Value
-Handler_write 0
+Handler_write 7
show status like '%tmp%';
Variable_name Value
Created_tmp_disk_tables 0
diff --git a/mysql-test/std_data/server8k-cert.pem b/mysql-test/std_data/server8k-cert.pem
new file mode 100644
index 00000000000..a0750f9e69e
--- /dev/null
+++ b/mysql-test/std_data/server8k-cert.pem
@@ -0,0 +1,51 @@
+-----BEGIN CERTIFICATE-----
+MIIJHDCCBQQCAQEwDQYJKoZIhvcNAQEEBQAwTjELMAkGA1UEBhMCU0UxEDAOBgNV
+BAgTB1VwcHNhbGExETAPBgNVBAoTCE15U1FMIEFCMQ0wCwYDVQQLEwRUZXN0MQsw
+CQYDVQQDEwJDQTAeFw0wNzA3MTMwNzU2MjVaFw0xMDA0MDgwNzU2MjVaMFoxCzAJ
+BgNVBAYTAlNFMRAwDgYDVQQIEwdVcHBzYWxhMRkwFwYDVQQKFBBNeVNRTCAgIAog
+ICAgIEFCMQ0wCwYDVQQLEwRUZXN0MQ8wDQYDVQQDEwZzZXJ2ZXIwggQiMA0GCSqG
+SIb3DQEBAQUAA4IEDwAwggQKAoIEAQDUFlh/3mwov5YaICFXOdJXgHV/uDkTjXB6
+9oxlipshQaYPX8LDT5vhI3gPciS1Z1sRE2dTcC4Mk2K4LDUIjp3WkeTfFAHZPV3E
+Y+3OH/ftH4N6SEIBTKE4EY6ah0nJtU98M0JhxOh5zHje6zQp1SkBnhEOQYexYRqj
+OtGloZ9RyF0iFAXcyu2Ap14u37l5Yla0cyPzvZqP4mFYlcXwaRfAacJmqMM1vuQv
+Fx1JITUTBugMF3VGZ1F0tw63EIUH/FW/WWncPqvG18na40qlv9ZkBw0FhZeKS8cK
+JIY5y4J30jn/eV8p1lTO7K+ASTuGZWmdRDgjUG0Y9OGuKsPPoaE6ml0HTnMBsBSQ
+fXUq9XkwGt8DTgPioAKHBHjLbILEy4FMYWrlTZlPTzNqyhayec/2T15oDladNSt7
+JpDLpX70UECXFhdEGxsGxtXdKbIBvNm2yT4X2nxW9ItsECjSSgD+94TgGoa8QKDw
+rpmgq+Wqpm54CZ1vN1oqyMUw1sjNEX/iLByHAjSALby2Kffk5cl5mnsR6d/k4jsi
+c3Qsciwkd+rQt/8VMhS2ns3nkez/BK3FvQA2Ms8xJhFLfszVrBhnjcFRTNT2+/KM
+lr1oT5Q1XZKL7qVXTpabPL51JlVBL5CSHl1QRkffsqfqcgJkcHBq+kKjUiFs4lad
+hTrvNBCXYa5+NkA2QqIfdOpNwl62/gdE7/7zU1uh40vkVKyzL+APkLPywPEXBOpQ
+yIDNkgoXmS10+JMD44K7uZyUmxZL7W7Xbi30NuEFrVOzoUmVXhapPbpQnkQHxn8n
+tqKPYXdBcvXcCKyJ6i79H2Vk9fM6rBYiwNcE7QyWqfd2QMjzr76veF04sXkPR+tG
+5Y1lrF9Zp3vabFXQg2RJuGA3rV6MR2GFNXuChIYu410vhIhPNtmdKEVoIVZsFsug
++dtn0PDCFrR8VEd/sshp0naNa9Ad1lY+marJkOJOVpPgCs2yJDPAUB/YdvSJ4avW
+6ZdvNTwhBL8fEJMS2DSqkaa6A3+i/SqITpU8ToJxsMGagBsLieXgvJALFysSRfR/
+2dmEu9/J0PPc28inHXwjiLb99VKlkuEz8wX9UkuoqFl0pLa8jrlM8hzdPQ9QHb3k
+9c5knfgPCYkOIWwGXH+NwANHdQRK7CmGAFV24k9+P3q0g5ikabVHr+4ZQ3WPd+1H
+K0+Msbb/vv53vFJWa+pYeNeFcwNCyW2kJBTMiI6qmlL4IWCcX+QDzpRLalbAWWHj
+l5Zk39QEaCL024DYK948IDXCqDg6utEs7YnMdaIF0meYMKjehZFp0fVQ8e8Od+rp
+bbjdj/w60wMgBpSOeYxVrs3QKNZd/if4Az3LggoVHB09SjXKiWpvAgMBAAEwDQYJ
+KoZIhvcNAQEEBQADggQBABncOBW0wQwJdEB6W3d9CrhFp40q1OM54GPfX0/0aUfP
+aOQPxS1uCKcFhxAmR4OT9RiJx+0bhDctekkuMkj5yy3u0a/4PxHIhnVxXTyB0/Hj
+N1gLz6cQricunl6Q4Ldi54gR5/KUehKLBWnqsfxhgzWBHosvhlJC0xh/uio7JTqz
+ns60djyL7R4wGbSqiGdhT9L2HfpJo3dmmWLDxe02jaHkbL1Z6NQMxrRgs3+gctp/
+Wd5UxNl4BHbNsSbzaK9V9gXUcj4TjZGGSqVki0+pEZ3dmksGZdoW9cSKtzKvgUQ6
+vhhqO4dcopxkY2zYeVOpspgTm0XLZSbNPXv5rSFwa4cpWSfD7u8o8KhHvkkSMahw
+cMuH17W4voHHFDtWP8Oq9rA7uE/4/LKCl0JmJl2RWM+G6PMH8w4X4auHPssgRvb/
+Ge1AvgqQJrvi7zWx3XYKKJ0ISBy7fi5Jo/wYgLagRYcG3mwdm1+gAdw+77C/ZGmG
+FbWFIPB1+Mc6azhhk9m/vqP7o/Wuncc99mp2zPMzdAEzuzp/IJ9UJNat0edA7jiC
+bQ7JSRJ1DSzdJZSWWHdardLNKipPfrEHVm7f5QvL5DQLnGpt+rCWL361KsGtvETC
+o+Ph7+kDJsJLokUYfs/BEZopzspNPy/NQ2ECwQp7T4Yq/PBE6Ce/dFaoZysMUOrG
+TcALtJW6It98dRmTJPiqjlrlHNTrfoV3Aiy+tK4rpyGuApSHc+1Y+t7YvWotRlQ4
+GEboBqR8evjDPJ1xAaUZqwLkebf3mlpl4MzHM9uNWBkQdJilkQs/IrAaApG3Ayt0
+nIymNHmDslBEdrRGmT4aNWAWYvVYzyKDy3H0fzYdWwuA9goJUL4tj3eMJa8pgEU/
+rG3HfflVi+xuwm1UnLXPSIE8hixgV8ebnwcCnEjlUBvwpl7f5Ub40jKcdycdGvVu
+gcTUzuRl1+Ikfk/MXKPbdi4A5Pjtz6AG4Ez9q5j7X77JqskTI5Z/f1RPiKwFBJHg
+cN4+BPnEuSWGcjiNDOfQxhk5exlWRf/gpEhnQpGHe3a7tZgfxHUb/pWU9BYpf8OH
+vtV3WSDXlUqsEEH6/bmvj8lmFWJLmeZv+qLy1wHxcXR9/GJ6TwCF8niQIl3MrBAL
+sKPLft1drmpqdIQpZQIJxtN/AQuD9mxEdW7XA6rkvFySKcswJpS1QjkSWpafCBWE
+wu+SPxZL8oFrnNMTU3JloUjcRp70FkNXLLm/Dy+MjW2qFBtIoBgNptVGp94L1uZS
+amd2XJMcOQ+X9fcH3wAdM3IHGn3NiLf6eTW92JNNA0IN6aNtyVaJKmFJ1JfXOl9r
+ujr4SorRSesaerjIcuzW1u1YE5RlgeI4kizV2/D5kYc=
+-----END CERTIFICATE-----
diff --git a/mysql-test/std_data/server8k-key.pem b/mysql-test/std_data/server8k-key.pem
new file mode 100644
index 00000000000..608593a5096
--- /dev/null
+++ b/mysql-test/std_data/server8k-key.pem
@@ -0,0 +1,99 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIISKQIBAAKCBAEA1BZYf95sKL+WGiAhVznSV4B1f7g5E41wevaMZYqbIUGmD1/C
+w0+b4SN4D3IktWdbERNnU3AuDJNiuCw1CI6d1pHk3xQB2T1dxGPtzh/37R+DekhC
+AUyhOBGOmodJybVPfDNCYcToecx43us0KdUpAZ4RDkGHsWEaozrRpaGfUchdIhQF
+3MrtgKdeLt+5eWJWtHMj872aj+JhWJXF8GkXwGnCZqjDNb7kLxcdSSE1EwboDBd1
+RmdRdLcOtxCFB/xVv1lp3D6rxtfJ2uNKpb/WZAcNBYWXikvHCiSGOcuCd9I5/3lf
+KdZUzuyvgEk7hmVpnUQ4I1BtGPThrirDz6GhOppdB05zAbAUkH11KvV5MBrfA04D
+4qAChwR4y2yCxMuBTGFq5U2ZT08zasoWsnnP9k9eaA5WnTUreyaQy6V+9FBAlxYX
+RBsbBsbV3SmyAbzZtsk+F9p8VvSLbBAo0koA/veE4BqGvECg8K6ZoKvlqqZueAmd
+bzdaKsjFMNbIzRF/4iwchwI0gC28tin35OXJeZp7Eenf5OI7InN0LHIsJHfq0Lf/
+FTIUtp7N55Hs/wStxb0ANjLPMSYRS37M1awYZ43BUUzU9vvyjJa9aE+UNV2Si+6l
+V06Wmzy+dSZVQS+Qkh5dUEZH37Kn6nICZHBwavpCo1IhbOJWnYU67zQQl2GufjZA
+NkKiH3TqTcJetv4HRO/+81NboeNL5FSssy/gD5Cz8sDxFwTqUMiAzZIKF5ktdPiT
+A+OCu7mclJsWS+1u124t9DbhBa1Ts6FJlV4WqT26UJ5EB8Z/J7aij2F3QXL13Ais
+ieou/R9lZPXzOqwWIsDXBO0Mlqn3dkDI86++r3hdOLF5D0frRuWNZaxfWad72mxV
+0INkSbhgN61ejEdhhTV7goSGLuNdL4SITzbZnShFaCFWbBbLoPnbZ9Dwwha0fFRH
+f7LIadJ2jWvQHdZWPpmqyZDiTlaT4ArNsiQzwFAf2Hb0ieGr1umXbzU8IQS/HxCT
+Etg0qpGmugN/ov0qiE6VPE6CcbDBmoAbC4nl4LyQCxcrEkX0f9nZhLvfydDz3NvI
+px18I4i2/fVSpZLhM/MF/VJLqKhZdKS2vI65TPIc3T0PUB295PXOZJ34DwmJDiFs
+Blx/jcADR3UESuwphgBVduJPfj96tIOYpGm1R6/uGUN1j3ftRytPjLG2/77+d7xS
+VmvqWHjXhXMDQsltpCQUzIiOqppS+CFgnF/kA86US2pWwFlh45eWZN/UBGgi9NuA
+2CvePCA1wqg4OrrRLO2JzHWiBdJnmDCo3oWRadH1UPHvDnfq6W243Y/8OtMDIAaU
+jnmMVa7N0CjWXf4n+AM9y4IKFRwdPUo1yolqbwIDAQABAoIEAQDI3u0tFoWMRoCs
+99d8HLiaxYED2YC9gw2QeKjal198LQhRsVnu0ByMLKLOxkX8RgrbbmxDe5Exufob
+A0urciAOFJoXqoRhs5x2oEqgGmkf/ePx0jQptOFREFfnBdGeKIpC0O3DWdLxYPbt
+8wixwkEXVhVDUk9pcdXf2ZqsbBpQRBvpZdtzlgNCAcLTVHP/gmMqf48CkIauVjPq
+ydfybibfx4sm3hodclH+Q78p/zicb8MhiKo7ZymgCKz4N743pQe1tsLrpbPeHY0C
+MpoFyF8O2Bq+KxwvELxQX+19GcHVKJhj3hmCr4wde9BxCWtGTBCusekVkVvy8iQ5
+aCmTIrtonMEVZXjJlXK0sw5hBKOmKx0jrSVC5FfgdxzNVlW4fCJXLEEpMsjMc+/3
+6bV7jqGn4N5CYaopNS2ccxdaucE3NjcmofahO6bqUTJHSPFecfYmCA42W2m+ldjj
+HZ78JLkyw03nT1hjPjbwHf5FTem1KfKg4EJrDprowMT7D8KZb0SW+z59pFoDOM5u
+Heu6sOSUtvpvKfozdw2ZAI58dhpW4/jTfCEtewRhPqE3/V7g3haTnQFxU8gm/a4N
+uefZTCjFE16QWNuvnUrJWw/DlvOBY8GjpQCWY0mDeBHPNOI0Xg9oRTgOCrKSLUya
+YSbg6BmhSKwKsYQU834jrQb3fXFlXZVIxlcNePOWMhHFFNAHucHF822Nr7u/3FOT
+twcbBIOXCGfDT6ed8d4dNum1L7k9Blju16CWkfuciL8PGXY4mGAmF4nZMXGZgK8B
+Cz9cxhtvFLe8gz5615DtBAsuVm7Q4AAHiULAMg6t6auyxCb8pXbAL0Ec5X4zS3+f
+I2riODYiyHCh/qTtjawOzUZZEtjZRMSDi+jk8wjjDdkFU8McOaYoPyqT3TDy2v6m
+NiPJs8GWQ2NCNo9CNoGbEIIFFP5iSz18XLFAOF+2dN/KHHl9nKyi7kOhYbbzoNku
+2wQV40yVsrS4E/hd/7+2IB2Muduxiu7NxCUSUXsw6p0hZTYMpIoduEfRSk1al0lS
+862GD8JgJ4RhJ0uIOTDJS52MQmO8zFIL86emdjjV1CzVvadYSQLTX7ZgR0i8g46A
+y0muCFAC8EJpnEtHzqtQ/z22zB8TCJShFuUK9KF6K8nOlbc6ShcUXU2J6r1sc8aT
+Dx0yzRXfCL15fpCJBP49EYaKhArTNmFRa2GaLiJP0OYkTrrwVOGuS6x2+kRVoP/8
+BcNMZ5x8mXP1LgotHCztgMKX30Hn5CLxbH8QfcWKemGva1jBmhCWxS17Gh3Ld9T3
+/WKkBa6JDq83rlO84x/iF3mB3tYkZPfcYtYURn5wwm/BmVV/9G1VwAatJdxmfCSy
+5JwC9WDBAoICAQD7xStPk3lq+qYHAtLZidujmzSNv7XG+E8UC9yvMRFuBwSM5ZE4
+YGD2LDev2nghB+7OSR8KJIkxeaNjP91Zf3s8wjCuxLg/cLGI6mf6uWy9+zypFg3i
+J+ylDKa6NBuqYyY75W7Pj63xvGQlw5kX5+mB3ulQbActT4cUiVdEkyDytzubqLzY
+s15QGFrL9gqLow+C+7LKQKdeXq8OavFV1PWkMDAJUki6cIir9m+f5Mqr2cQCLKgx
+38aX8c9UWJv6pI5zQQuBjpaBOwz07WnyTXiFpc71x/8i85uLGDM0e3VO5ZPGeRBj
+jZ0ucHatOHJ3i/nPRG16rsPR+q97QiDHoLF0quHEG+ND+rwTBzNGIwzYRE16p1o3
+UdzFk1RzlDCfOX7QgszCwK6mf8TbCK9f/FxJ5e6TCkt3iHXSrlLS4op6k9nEpKFH
+KHf4nPtCy9GriP+A8+dA6K1s+DgejoIojBMBTsnl4TEf+m8BaenTXGuU7KYyc8dR
+JqmpmDggDRT/ImHRhXirY7lIIYXnI7tRjN5gmnKpEiHScT1r848zpQ4gWH1Dx/ks
+mKT6NZ8nF45saQCYbKEYc0RH9Kw0O7vr1kVtNPc2dEZtVgt4bC5fnl7xX1/YTk3m
++h1qfzbku/+MX5rRjHLR2l8a71UltlnnnpP5NKBBgtxll6aCIkk6CdH8YQKCAgEA
+16aBaVa0cOZmiOQwPQkpuXIbV7msz1ttWEAHElCy6waniOCON89PYFCb7F0NjV3Q
+i+pGaRgG1iZGbjjHwyqTrHhMloFm+IsSWZqOZzrHgSJgA4bgTJFgp+5b31sQXGfJ
+14QQSqMJLC61/M+CnrNtiuI3IVHx6BFRxI42uE7PfTyUMaFhL9F0/SLl0Mw0oMPj
+S5kmarduuKpRn1tN9WO+ywEvYwopvH3e9PBssZzPpttlLiE/Wulb0iEtlVXYB9DS
+Vzc94N2dzFMIvWUDF9BQ+IBMRzXRm15Psy6LfzoK+9S6w38Dx3BVV8ykSMKeW1UR
+ZwTajjdnIBLdE3onD5XMmrSOPw/WtV5zXEYY4DObhIPoN2iD8GJP0IubPb6fonH5
+VHmuVZoXrroFEe7rdt2wgmBdPPl6fqvBKVhjJOpYQctrFLgWh63bXZKaBWqbQM9W
+fECq8We1VN3fzqwfwJQit3z5R/DjQNk8eQx7SnnkOzAY6ZgpysHCwaoPOnPVuiYF
+ZU0+X3iwfsdeefWmGEDIzoZk6nYaljs61lOhhEoWHngZHDkMOp5kg0n9f8BUP02+
+WJ4QhwzZ73hr4FPBuPHHXECw9TCAgCBHBFrnrXg5QalDhRXz4F+3tCY7UUpD/ikZ
+L6Daxm5zGJ5u3rXs6WwKy2EHVVS9zfqs4Q259pQdWM8CggIAcIKpGzOVM+h033c0
+kIBZxeAq+Rlt+0+lzxiJ80RjPJ8oOmqwndf8HKaf8BcaTfCEmGz20QqIwLJSAJ1e
+posgoINLTB6fE8Kho8TU2KeaX7/xWMKBS8p5pzxjGZ0Fq/wI7wVVoq3blsaQnout
+U5CQujfKXeUYw/fhLp09gWiadbzKh4I9ej2V7QclNDZsegBRg0BForqH0NVRN4k0
+9h1n9IqQPOonlCGMAgTr1zFgHLIBNNOOClOtJOOruk6qzbRR8FFl+eyld3TTEnUy
+PlS+gkMZnJ5WduEUZnFXGKH/R1Wy1yPs3gA/+KvLbRdnl+LWrPgwUH3fBmwXlWZ0
+zaETDEb9Ay1PP2bCO2KhWDt7lv3W/fPhjg0oMqbnO4tCuzTvZfC93l5K7h708skL
+zkIxX9i/57fXB8DUnmTGoHUaWzLNQ2IqrGj6TACjDDOXLCfZvl/AvTH9pk+6jHU0
+1zfZmmECOpeK43Z/ussA8jI/5Vpn3u38aVh0w1RB6JjQBD/yJLaXuUekWgaZFzTR
+ldz014jNqp5uvONcBmzeVr7w9CV3PR4VTQed2i6yQ770J6A44uTQjOOd5OYDOohj
+Lz4e4nGj9BK8Eko8cAEwLAzS8tyjMT+08n5dPOVCu68DwVBMGE7CVONYUuoXS/YU
+cTxddiU9ZGk9Yq0FfOwjeys+SqECggIAdn3M2b6Egwx2Bn2ra74fKQBjub4SEBWi
+bT0xJYUl6jHL2E/alRvZ94gTRLqUebq0nkxpx9El4IFDbcjRKpG4dqnbG0+a7rIr
+sQRVfq8zc+cZbparpCa1P1CfNojo4n080KiF8xzGK3q3EGRM1zqr1AYcWLiX/PWX
+QjMKKhdTtvKUUvjjV8z1RSnpsOKjgDpiJ+XM0BJeSiV7l94pZc4axZyvFvI8oI9g
+9KEueCE7j+k5HTGziBZ1F26Xh1iVzSWWjcmSvH3I+L4fLUHVgz45X3HPd8lAlOgr
+Tr8icxPHeTwYKtcdknZMzmNpWXlmXbTOTRbDqCUVCvCSfOM/lzauJ8tR5aCkTx/I
+r0js3jQ9HYEFFXzeEjVSubob4L9fI3kQkLQTcIGsxZr8si/fPX7uP5UHZjuGbRee
+mUMxptUFDZHiEo5cAs0qna2x54v+JoxGbxtxUhez8R/Am+TDxaMfuEZ5Cmh31egH
+bFPJYtC68TKqXZ/4RqpUgukYWPvQ0emWSWU6AmdkQyT06nppeyYNsDz0MkgWr7l3
+yNBHDVNP+Anxcip+Z68kd2cuXQWmxOnIzxR67FnJXeWDEM20whRHgI8jLHYsBTq3
+CtOQPSaz/zosGXJIgF7Xp6riKPZvibW3Ww49Z47EuyBCtyirNk7hV4LG7sITUJyO
+ZVKPfcdAoM0CggIBANz3EBZGyt3af2UjFFKbazV01KcHF8OxqdQzsLqHCXWb98V6
+PggQnrF76U7DvqOWho9djDBPrbQU55HG5nXq+eZKPwhsOdwQ8bxOhaVxQcATZOI7
+FtJYnjM1/+zMzzS0iPR5DA2pbB3AKH2Z+wODmF23CK2XTwoJyPKxvlyGKrIqq3gN
+kOmocNu2Qm5bJf+D/hYPm5Ust2wzD52NnvJU536bZ0ZMo1/kaK2idqSAzqo4TkR1
+j9U0fdW2rIBDo/qFmBBdJhYVjYLj4qR8CEEoIjshD4Nztf1xRM5C8irE/gJcT5+r
+4bPJJ5TjAtHxPiQqZruSprSEUbMsPqBap64ow0SmbNNWSgyaz2ha1rG0p52NBzH4
+XM52LBqS9QHPHvB0ooYfBTfPpDM3CePuuNyzjPAw86ncUo38FKXuc2oViJJ6C5I7
+v2sKhLK5gu3uPBB2ludDEXSpWBqiraynolOT/o52r+taYp9YY2WU3GrhOiV/A1FV
+Nl118xiF6FOFpEeTbhHvy27A8kZEKXgeSs+f4aC0XG9kLVD1CiCbQiqHTDcDS4nV
+O1N1eQxhP81X+YKE4Lgufh07REqYVwtCj2lQcMp73WDyfBLKTEFlmHusoqmT5JCH
+X0BWNjk5Dn1g5h63/lQb+EjNRILBhDFYhrDRDQtw5p0/7IY3AcNKDUHv+XGn
+-----END RSA PRIVATE KEY-----
diff --git a/mysql-test/suite/funcs_1/datadict/datadict_master.inc b/mysql-test/suite/funcs_1/datadict/datadict_master.inc
index 6088a5c5143..618919f8300 100644
--- a/mysql-test/suite/funcs_1/datadict/datadict_master.inc
+++ b/mysql-test/suite/funcs_1/datadict/datadict_master.inc
@@ -437,19 +437,23 @@ eval SELECT *
# check also with a 'simple' user
CREATE USER user_3212@localhost;
GRANT ALL ON db_datadict.* TO user_3212@localhost;
+# OBN: The following line was added following the fix to bug 28181
+# where queries to information_schema will fail if exporting to
+# a file without having the FILE attribute
+GRANT FILE ON *.* TO user_3212@localhost;
+
--replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK
connect (u3212,localhost,user_3212,,db_datadict);
--source suite/funcs_1/include/show_connection.inc
# no db given --> db_datadict.schema does not exist
---error 1045
+--error 1146
eval SELECT *
INTO OUTFILE '../tmp/out.$ENGINE_TYPE.user.file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM schemata LIMIT 0, 5;
-# FIXME 3.2.1.2: why do we get different error numbers with and without OUTFILE ?
--error 1146
eval SELECT *
FROM schemata LIMIT 0, 5;
@@ -460,8 +464,6 @@ eval SELECT *
LINES TERMINATED BY '\n'
FROM information_schema.schemata
WHERE schema_name LIKE 'db_%';
-# The above will fail with access error as long as
-# BUBG#28181 - a regression introduced in 5.0.42 is not fixed
eval SELECT *
FROM information_schema.schemata
@@ -469,14 +471,11 @@ eval SELECT *
USE information_schema;
-# no db given --> db_datadict.schema does not exist
eval SELECT *
INTO OUTFILE '../tmp/out.$ENGINE_TYPE.user_2.file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM schemata LIMIT 0, 5;
-# The above will fail with access error as long as
-# BUBG#28181 - a regression introduced in 5.0.42 is not fixed
eval SELECT *
FROM schemata LIMIT 0, 5;
@@ -487,8 +486,6 @@ eval SELECT *
LINES TERMINATED BY '\n'
FROM information_schema.schemata
WHERE schema_name LIKE 'db_%';
-# The above will fail with access error as long as
-# BUBG#28181 - a regression introduced in 5.0.42 is not fixed
eval SELECT *
FROM information_schema.schemata
diff --git a/mysql-test/suite/funcs_1/datadict/datadict_tables_error_1044.inc b/mysql-test/suite/funcs_1/datadict/datadict_tables_error_1044.inc
index a8876ee7db6..a8876ee7db6 100644..100755
--- a/mysql-test/suite/funcs_1/datadict/datadict_tables_error_1044.inc
+++ b/mysql-test/suite/funcs_1/datadict/datadict_tables_error_1044.inc
diff --git a/mysql-test/suite/funcs_1/r/innodb__datadict.result b/mysql-test/suite/funcs_1/r/innodb__datadict.result
index 25c5fbbf358..7521ef4303c 100644
--- a/mysql-test/suite/funcs_1/r/innodb__datadict.result
+++ b/mysql-test/suite/funcs_1/r/innodb__datadict.result
@@ -6055,6 +6055,7 @@ INTO OUTFILE '../tmp/out.innodb.db.file'
WHERE schema_name LIKE 'db_%';
CREATE USER user_3212@localhost;
GRANT ALL ON db_datadict.* TO user_3212@localhost;
+GRANT FILE ON *.* TO user_3212@localhost;
connect(localhost,user_3212,,db_datadict,MYSQL_PORT,MYSQL_SOCK);
user_3212@localhost db_datadict
@@ -6063,7 +6064,7 @@ INTO OUTFILE '../tmp/out.innodb.user.file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM schemata LIMIT 0, 5;
-ERROR 28000: Access denied for user 'user_3212'@'localhost' (using password: NO)
+ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
SELECT *
FROM schemata LIMIT 0, 5;
ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
diff --git a/mysql-test/suite/funcs_1/r/innodb_func_view.result b/mysql-test/suite/funcs_1/r/innodb_func_view.result
index ab4508fb302..f901bcf8246 100644
--- a/mysql-test/suite/funcs_1/r/innodb_func_view.result
+++ b/mysql-test/suite/funcs_1/r/innodb_func_view.result
@@ -9,7 +9,7 @@ CREATE TABLE t1_values
id BIGINT AUTO_INCREMENT,
select_id BIGINT,
PRIMARY KEY(id)
-) ENGINE = <engine_to_be_tested>;
+) ENGINE = 'InnoDB' ;
ALTER TABLE t1_values ADD my_char_30 CHAR(30);
ALTER TABLE t1_values ADD my_varchar_1000 VARCHAR(1000);
ALTER TABLE t1_values ADD my_binary_30 BINARY(30);
@@ -123,8 +123,10 @@ INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '1 17:58';
INSERT INTO t1_values SET select_id = @select_id,
my_bigint = 1758;
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = +1.758E+3;
+
+some statements disabled because of
+Bug#12440: CAST(data type DOUBLE AS TIME) strange results
+--------------------------------------------------------------------------------
INSERT INTO t1_values SET select_id = @select_id,
my_char_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
@@ -133,20 +135,29 @@ INSERT INTO t1_values SET select_id = @select_id,
my_binary_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '-3333.3333';
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = -0.33333333E+4;
+
+some statements disabled because of
+Bug#13349: CAST(1.0E+300 TO DECIMAL) returns wrong result + diff little/big endian
+--------------------------------------------------------------------------------
"Attention: CAST --> SIGNED INTEGER
+ The file with expected results suffers from
+ Bug#5083 Big integer values are inserted as negative into
+ decimal/string columns
Bug#5913 Traditional mode: BIGINT range not correctly delimited
- Status: To be fixed later"
+ Both have the status: To be fixed later"
+--------------------------------------------------------------------------------
+
+some statements disabled because of
+Bug #13344: CAST(1E+300 TO signed int) on little endian CPU, wrong result
--------------------------------------------------------------------------------
"Attention: CAST --> UNSIGNED INTEGER
- The file with expected results suffers from Bug 5913"
+ The file with expected results suffers from Bug 5083 5913 9809"
--------------------------------------------------------------------------------
some statements disabled because of
-Bug#5913 Traditional mode: BIGINT range not correctly delimited
+Bugs#8663: cant use bgint unsigned as input to cast
--------------------------------------------------------------------------------
SET @my_select = 'SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values';
@@ -164,6 +175,11 @@ SET @my_select = 'SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values';
+
+"Attention: IF(my_year IS NULL, ...
+ The file with expected results suffers from
+ Bug#11689. successful CREATE VIEW but SELECT on view fails."
+--------------------------------------------------------------------------------
SET @my_select = 'SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT BIT_LENGTH(my_varchar_1000),
@@ -186,7 +202,7 @@ SET @my_select =
'SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values';
"Attention: LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', <numeric column>)
- The file with expected results suffers from Bug 10963"
+ The file with expected results suffers from Bug 10963 11728"
and the testcases with length = BIGINT or DOUBLE column are deactivated,
because there are 32/64 Bit differences
--------------------------------------------------------------------------------
@@ -200,9 +216,8 @@ SET @my_select = 'SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values';
-SELECT 'äÄ@' INTO OUTFILE '../tmp/func_view.dat';
SET @my_select =
-'SELECT LOAD_FILE(''../tmp/func_view.dat''), id FROM t1_values';
+'SELECT LOAD_FILE(''../log/current_test''), id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_varchar_1000),
@@ -284,19 +299,19 @@ SET sql_mode = '';
--------------------------------------------------------------------------------
CREATE VIEW v1 AS SELECT my_char_30, id FROM t1_values;
SELECT my_char_30, id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL order by id;
+WHERE select_id = 187 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL) order by id;
+WHERE select_id = 187 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values;
SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL order by id;
+WHERE select_id = 186 OR select_id IS NULL;
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -308,7 +323,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select concat(_latin1'A',`t1_values`.`my_char_30`) AS `CONCAT('A',my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL) order by id;
+WHERE select_id = 186 OR select_id IS NULL);
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -322,13 +337,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL order by id;
+WHERE select_id = 185 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varbinary_1000`) AS `LTRIM(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL) order by id;
+WHERE select_id = 185 OR select_id IS NULL);
DROP VIEW v1;
@@ -336,13 +351,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL order by id;
+WHERE select_id = 184 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_binary_30`) AS `LTRIM(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL) order by id;
+WHERE select_id = 184 OR select_id IS NULL);
DROP VIEW v1;
@@ -350,13 +365,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL order by id;
+WHERE select_id = 183 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varchar_1000`) AS `LTRIM(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL) order by id;
+WHERE select_id = 183 OR select_id IS NULL);
DROP VIEW v1;
@@ -364,13 +379,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values;
SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL order by id;
+WHERE select_id = 182 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_char_30`) AS `LTRIM(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL) order by id;
+WHERE select_id = 182 OR select_id IS NULL);
DROP VIEW v1;
@@ -378,13 +393,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL order by id;
+WHERE select_id = 181 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varbinary_1000`) AS `LOWER(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL) order by id;
+WHERE select_id = 181 OR select_id IS NULL);
DROP VIEW v1;
@@ -392,13 +407,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL order by id;
+WHERE select_id = 180 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_binary_30`) AS `LOWER(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL) order by id;
+WHERE select_id = 180 OR select_id IS NULL);
DROP VIEW v1;
@@ -406,13 +421,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL order by id;
+WHERE select_id = 179 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LOWER(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL) order by id;
+WHERE select_id = 179 OR select_id IS NULL);
DROP VIEW v1;
@@ -420,13 +435,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values;
SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL order by id;
+WHERE select_id = 178 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_char_30`) AS `LOWER(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL) order by id;
+WHERE select_id = 178 OR select_id IS NULL);
DROP VIEW v1;
@@ -434,13 +449,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL order by id;
+WHERE select_id = 177 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_decimal`) AS `LOCATE('-', ' - -ABC', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL) order by id;
+WHERE select_id = 177 OR select_id IS NULL);
DROP VIEW v1;
@@ -448,13 +463,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL order by id;
+WHERE select_id = 176 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_double`) AS `LOCATE('-', ' - -ABC', my_double)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL) order by id;
+WHERE select_id = 176 OR select_id IS NULL);
DROP VIEW v1;
@@ -462,13 +477,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL order by id;
+WHERE select_id = 175 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_bigint`) AS `LOCATE('-', ' - -ABC', my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL) order by id;
+WHERE select_id = 175 OR select_id IS NULL);
DROP VIEW v1;
@@ -476,13 +491,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL order by id;
+WHERE select_id = 174 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varbinary_1000`,3) AS `LOCATE('-', my_varbinary_1000, 3)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL) order by id;
+WHERE select_id = 174 OR select_id IS NULL);
DROP VIEW v1;
@@ -490,13 +505,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values;
SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL order by id;
+WHERE select_id = 173 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_binary_30`,3) AS `LOCATE('-', my_binary_30, 3)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL) order by id;
+WHERE select_id = 173 OR select_id IS NULL);
DROP VIEW v1;
@@ -504,13 +519,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL order by id;
+WHERE select_id = 172 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varchar_1000`,3) AS `LOCATE('-', my_varchar_1000, 3)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL) order by id;
+WHERE select_id = 172 OR select_id IS NULL);
DROP VIEW v1;
@@ -518,13 +533,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values;
SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL order by id;
+WHERE select_id = 171 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_char_30`,3) AS `LOCATE('-', my_char_30, 3)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL) order by id;
+WHERE select_id = 171 OR select_id IS NULL);
DROP VIEW v1;
@@ -532,13 +547,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL order by id;
+WHERE select_id = 170 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varbinary_1000, my_binary_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL) order by id;
+WHERE select_id = 170 OR select_id IS NULL);
DROP VIEW v1;
@@ -546,13 +561,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL order by id;
+WHERE select_id = 169 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varbinary_1000, my_varchar_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL) order by id;
+WHERE select_id = 169 OR select_id IS NULL);
DROP VIEW v1;
@@ -560,13 +575,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL order by id;
+WHERE select_id = 168 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varbinary_1000, my_char_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL) order by id;
+WHERE select_id = 168 OR select_id IS NULL);
DROP VIEW v1;
@@ -574,13 +589,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL order by id;
+WHERE select_id = 167 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varbinary_1000, my_varbinary_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL) order by id;
+WHERE select_id = 167 OR select_id IS NULL);
DROP VIEW v1;
@@ -588,13 +603,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL order by id;
+WHERE select_id = 166 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_binary_30, my_varbinary_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL) order by id;
+WHERE select_id = 166 OR select_id IS NULL);
DROP VIEW v1;
@@ -602,13 +617,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL order by id;
+WHERE select_id = 165 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_binary_30, my_varchar_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL) order by id;
+WHERE select_id = 165 OR select_id IS NULL);
DROP VIEW v1;
@@ -616,13 +631,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL order by id;
+WHERE select_id = 164 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_binary_30, my_char_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL) order by id;
+WHERE select_id = 164 OR select_id IS NULL);
DROP VIEW v1;
@@ -630,13 +645,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values;
SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL order by id;
+WHERE select_id = 163 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_binary_30, my_binary_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL) order by id;
+WHERE select_id = 163 OR select_id IS NULL);
DROP VIEW v1;
@@ -644,13 +659,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL order by id;
+WHERE select_id = 162 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varchar_1000, my_varbinary_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL) order by id;
+WHERE select_id = 162 OR select_id IS NULL);
DROP VIEW v1;
@@ -658,13 +673,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL order by id;
+WHERE select_id = 161 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varchar_1000, my_binary_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL) order by id;
+WHERE select_id = 161 OR select_id IS NULL);
DROP VIEW v1;
@@ -672,13 +687,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL order by id;
+WHERE select_id = 160 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varchar_1000, my_char_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL) order by id;
+WHERE select_id = 160 OR select_id IS NULL);
DROP VIEW v1;
@@ -686,13 +701,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL order by id;
+WHERE select_id = 159 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varchar_1000, my_varchar_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL) order by id;
+WHERE select_id = 159 OR select_id IS NULL);
DROP VIEW v1;
@@ -700,13 +715,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL order by id;
+WHERE select_id = 158 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_char_30, my_varbinary_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL) order by id;
+WHERE select_id = 158 OR select_id IS NULL);
DROP VIEW v1;
@@ -714,13 +729,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL order by id;
+WHERE select_id = 157 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_char_30, my_binary_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL) order by id;
+WHERE select_id = 157 OR select_id IS NULL);
DROP VIEW v1;
@@ -728,13 +743,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL order by id;
+WHERE select_id = 156 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_char_30, my_varchar_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL) order by id;
+WHERE select_id = 156 OR select_id IS NULL);
DROP VIEW v1;
@@ -742,13 +757,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values;
SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL order by id;
+WHERE select_id = 155 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_char_30, my_char_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL) order by id;
+WHERE select_id = 155 OR select_id IS NULL);
DROP VIEW v1;
@@ -756,13 +771,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL order by id;
+WHERE select_id = 154 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varbinary_1000`) AS `LOCATE('char', my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL) order by id;
+WHERE select_id = 154 OR select_id IS NULL);
DROP VIEW v1;
@@ -770,13 +785,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL order by id;
+WHERE select_id = 153 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_binary_30`) AS `LOCATE('char', my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL) order by id;
+WHERE select_id = 153 OR select_id IS NULL);
DROP VIEW v1;
@@ -784,13 +799,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL order by id;
+WHERE select_id = 152 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varchar_1000`) AS `LOCATE('char', my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL) order by id;
+WHERE select_id = 152 OR select_id IS NULL);
DROP VIEW v1;
@@ -798,46 +813,46 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values;
SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL order by id;
+WHERE select_id = 151 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `LOCATE('char', my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL) order by id;
+WHERE select_id = 151 OR select_id IS NULL);
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values;
-SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+CREATE VIEW v1 AS SELECT LOAD_FILE('../log/current_test'), id FROM t1_values;
+SELECT LOAD_FILE('../log/current_test'), id FROM t1_values
+WHERE select_id = 150 OR select_id IS NULL;
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: innodb_func_view
1
-äÄ@
+CURRENT_TEST: innodb_func_view
2
-äÄ@
+CURRENT_TEST: innodb_func_view
3
-äÄ@
+CURRENT_TEST: innodb_func_view
4
-äÄ@
+CURRENT_TEST: innodb_func_view
5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../tmp/func_view.dat') AS `LOAD_FILE('../tmp/func_view.dat')`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../log/current_test') AS `LOAD_FILE('../log/current_test')`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL) order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+WHERE select_id = 150 OR select_id IS NULL);
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: innodb_func_view
1
-äÄ@
+CURRENT_TEST: innodb_func_view
2
-äÄ@
+CURRENT_TEST: innodb_func_view
3
-äÄ@
+CURRENT_TEST: innodb_func_view
4
-äÄ@
+CURRENT_TEST: innodb_func_view
5
DROP VIEW v1;
@@ -846,13 +861,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL order by id;
+WHERE select_id = 149 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varbinary_1000`) AS `LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL) order by id;
+WHERE select_id = 149 OR select_id IS NULL);
DROP VIEW v1;
@@ -860,13 +875,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL order by id;
+WHERE select_id = 148 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_binary_30`) AS `LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL) order by id;
+WHERE select_id = 148 OR select_id IS NULL);
DROP VIEW v1;
@@ -874,13 +889,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL order by id;
+WHERE select_id = 147 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varchar_1000`) AS `LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL) order by id;
+WHERE select_id = 147 OR select_id IS NULL);
DROP VIEW v1;
@@ -888,19 +903,19 @@ CREATE VIEW v1 AS SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL order by id;
+WHERE select_id = 146 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_char_30`) AS `LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL) order by id;
+WHERE select_id = 146 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values;
SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL order by id;
+WHERE select_id = 145 OR select_id IS NULL;
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -915,7 +930,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(_latin1'AaBbCcDdEeFfGgHhIiJjÄäÜüÖö',`t1_values`.`my_decimal`) AS `LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL) order by id;
+WHERE select_id = 145 OR select_id IS NULL);
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -930,7 +945,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values;
SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL order by id;
+WHERE select_id = 144 OR select_id IS NULL;
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -942,7 +957,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varbinary_1000`,2) AS `LEFT(my_varbinary_1000, 2)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL) order by id;
+WHERE select_id = 144 OR select_id IS NULL);
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -954,7 +969,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values;
SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL order by id;
+WHERE select_id = 143 OR select_id IS NULL;
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -966,7 +981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_binary_30`,2) AS `LEFT(my_binary_30, 2)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL) order by id;
+WHERE select_id = 143 OR select_id IS NULL);
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -978,7 +993,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values;
SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL order by id;
+WHERE select_id = 142 OR select_id IS NULL;
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -990,7 +1005,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varchar_1000`,2) AS `LEFT(my_varchar_1000, 2)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL) order by id;
+WHERE select_id = 142 OR select_id IS NULL);
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -1002,7 +1017,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values;
SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL order by id;
+WHERE select_id = 141 OR select_id IS NULL;
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1014,7 +1029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_char_30`,2) AS `LEFT(my_char_30, 2)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL) order by id;
+WHERE select_id = 141 OR select_id IS NULL);
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1028,13 +1043,13 @@ CREATE VIEW v1 AS SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL order by id;
+WHERE select_id = 140 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LCASE(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL) order by id;
+WHERE select_id = 140 OR select_id IS NULL);
DROP VIEW v1;
@@ -1042,13 +1057,13 @@ CREATE VIEW v1 AS SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values;
SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL order by id;
+WHERE select_id = 139 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `INSTR(my_char_30, 'char')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL) order by id;
+WHERE select_id = 139 OR select_id IS NULL);
DROP VIEW v1;
@@ -1056,7 +1071,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL order by id;
+WHERE select_id = 138 OR select_id IS NULL;
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1068,7 +1083,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varbinary_1000`) AS `BIT_LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL) order by id;
+WHERE select_id = 138 OR select_id IS NULL);
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1082,7 +1097,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL order by id;
+WHERE select_id = 137 OR select_id IS NULL;
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1094,7 +1109,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_binary_30`) AS `BIT_LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL) order by id;
+WHERE select_id = 137 OR select_id IS NULL);
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1108,7 +1123,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL order by id;
+WHERE select_id = 136 OR select_id IS NULL;
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1120,7 +1135,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varchar_1000`) AS `BIT_LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL) order by id;
+WHERE select_id = 136 OR select_id IS NULL);
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1134,7 +1149,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL order by id;
+WHERE select_id = 135 OR select_id IS NULL;
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1146,7 +1161,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_char_30`) AS `BIT_LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL) order by id;
+WHERE select_id = 135 OR select_id IS NULL);
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1160,7 +1175,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values;
SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL order by id;
+WHERE select_id = 134 OR select_id IS NULL;
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1172,7 +1187,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_year`,_latin1'IS_NULL') AS `IFNULL(my_year,'IS_NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL) order by id;
+WHERE select_id = 134 OR select_id IS NULL);
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1186,7 +1201,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values;
SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL order by id;
+WHERE select_id = 133 OR select_id IS NULL;
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1198,7 +1213,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_time`,_latin1'IS_NULL') AS `IFNULL(my_time,'IS_NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL) order by id;
+WHERE select_id = 133 OR select_id IS NULL);
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1212,7 +1227,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values;
SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL order by id;
+WHERE select_id = 132 OR select_id IS NULL;
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1224,7 +1239,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_timestamp`,_latin1'IS_NULL') AS `IFNULL(my_timestamp,'IS_NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL) order by id;
+WHERE select_id = 132 OR select_id IS NULL);
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1238,7 +1253,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values;
SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL order by id;
+WHERE select_id = 131 OR select_id IS NULL;
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1250,7 +1265,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_date`,_latin1'IS_NULL') AS `IFNULL(my_date,'IS_NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL) order by id;
+WHERE select_id = 131 OR select_id IS NULL);
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1264,7 +1279,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values;
SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL order by id;
+WHERE select_id = 130 OR select_id IS NULL;
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1276,7 +1291,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_datetime`,_latin1'IS_NULL') AS `IFNULL(my_datetime,'IS_NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL) order by id;
+WHERE select_id = 130 OR select_id IS NULL);
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1290,7 +1305,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values;
SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL order by id;
+WHERE select_id = 129 OR select_id IS NULL;
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1302,7 +1317,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_double`,_latin1'IS_NULL') AS `IFNULL(my_double,'IS_NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL) order by id;
+WHERE select_id = 129 OR select_id IS NULL);
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1316,7 +1331,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values;
SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL order by id;
+WHERE select_id = 128 OR select_id IS NULL;
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1328,7 +1343,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_decimal`,_latin1'IS_NULL') AS `IFNULL(my_decimal,'IS_NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL) order by id;
+WHERE select_id = 128 OR select_id IS NULL);
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1342,7 +1357,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values;
SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL order by id;
+WHERE select_id = 127 OR select_id IS NULL;
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1354,7 +1369,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_bigint`,_latin1'IS_NULL') AS `IFNULL(my_bigint,'IS_NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL) order by id;
+WHERE select_id = 127 OR select_id IS NULL);
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1368,7 +1383,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values;
SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL order by id;
+WHERE select_id = 126 OR select_id IS NULL;
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1380,7 +1395,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varbinary_1000`,_latin1'IS_NULL') AS `IFNULL(my_varbinary_1000,'IS_NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL) order by id;
+WHERE select_id = 126 OR select_id IS NULL);
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1394,7 +1409,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values;
SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL order by id;
+WHERE select_id = 125 OR select_id IS NULL;
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1406,7 +1421,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_binary_30`,_latin1'IS_NULL') AS `IFNULL(my_binary_30,'IS_NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL) order by id;
+WHERE select_id = 125 OR select_id IS NULL);
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1420,7 +1435,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values;
SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL order by id;
+WHERE select_id = 124 OR select_id IS NULL;
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1432,7 +1447,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varchar_1000`,_latin1'IS_NULL') AS `IFNULL(my_varchar_1000,'IS_NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL) order by id;
+WHERE select_id = 124 OR select_id IS NULL);
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1446,7 +1461,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values;
SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL order by id;
+WHERE select_id = 123 OR select_id IS NULL;
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1458,7 +1473,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_char_30`,_latin1'IS_NULL') AS `IFNULL(my_char_30,'IS_NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL) order by id;
+WHERE select_id = 123 OR select_id IS NULL);
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1472,7 +1487,7 @@ CREATE VIEW v1 AS SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values;
SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL order by id;
+WHERE select_id = 122 OR select_id IS NULL;
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1486,7 +1501,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL) order by id;
+WHERE select_id = 122 OR select_id IS NULL);
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1501,7 +1516,7 @@ CREATE VIEW v1 AS SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values;
SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL order by id;
+WHERE select_id = 121 OR select_id IS NULL;
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1515,7 +1530,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL) order by id;
+WHERE select_id = 121 OR select_id IS NULL);
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1530,7 +1545,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL order by id;
+WHERE select_id = 120 OR select_id IS NULL;
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1544,7 +1559,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL) order by id;
+WHERE select_id = 120 OR select_id IS NULL);
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1559,7 +1574,7 @@ CREATE VIEW v1 AS SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values;
SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL order by id;
+WHERE select_id = 119 OR select_id IS NULL;
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1573,7 +1588,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL) order by id;
+WHERE select_id = 119 OR select_id IS NULL);
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1588,7 +1603,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values;
SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL order by id;
+WHERE select_id = 118 OR select_id IS NULL;
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1602,7 +1617,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL) order by id;
+WHERE select_id = 118 OR select_id IS NULL);
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1617,7 +1632,7 @@ CREATE VIEW v1 AS SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values;
SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL order by id;
+WHERE select_id = 117 OR select_id IS NULL;
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1631,7 +1646,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL) order by id;
+WHERE select_id = 117 OR select_id IS NULL);
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1646,7 +1661,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values;
SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL order by id;
+WHERE select_id = 116 OR select_id IS NULL;
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1660,7 +1675,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL) order by id;
+WHERE select_id = 116 OR select_id IS NULL);
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1675,7 +1690,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values;
SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL order by id;
+WHERE select_id = 115 OR select_id IS NULL;
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1689,7 +1704,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL) order by id;
+WHERE select_id = 115 OR select_id IS NULL);
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1704,7 +1719,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL order by id;
+WHERE select_id = 114 OR select_id IS NULL;
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1718,7 +1733,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL) order by id;
+WHERE select_id = 114 OR select_id IS NULL);
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1733,7 +1748,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL order by id;
+WHERE select_id = 113 OR select_id IS NULL;
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1747,7 +1762,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL) order by id;
+WHERE select_id = 113 OR select_id IS NULL);
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1762,7 +1777,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL order by id;
+WHERE select_id = 112 OR select_id IS NULL;
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1776,7 +1791,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL) order by id;
+WHERE select_id = 112 OR select_id IS NULL);
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1791,7 +1806,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values;
SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL order by id;
+WHERE select_id = 111 OR select_id IS NULL;
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1805,7 +1820,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL) order by id;
+WHERE select_id = 111 OR select_id IS NULL);
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1820,7 +1835,7 @@ CREATE VIEW v1 AS SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values;
SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL order by id;
+WHERE select_id = 110 OR select_id IS NULL;
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1832,7 +1847,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_year`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_year, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL) order by id;
+WHERE select_id = 110 OR select_id IS NULL);
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1846,7 +1861,7 @@ CREATE VIEW v1 AS SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values;
SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL order by id;
+WHERE select_id = 109 OR select_id IS NULL;
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1858,7 +1873,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_time`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_time, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL) order by id;
+WHERE select_id = 109 OR select_id IS NULL);
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1872,7 +1887,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL order by id;
+WHERE select_id = 108 OR select_id IS NULL;
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1884,7 +1899,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_timestamp`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL) order by id;
+WHERE select_id = 108 OR select_id IS NULL);
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1898,7 +1913,7 @@ CREATE VIEW v1 AS SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values;
SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL order by id;
+WHERE select_id = 107 OR select_id IS NULL;
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1910,7 +1925,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_date`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_date, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL) order by id;
+WHERE select_id = 107 OR select_id IS NULL);
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1924,7 +1939,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values;
SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL order by id;
+WHERE select_id = 106 OR select_id IS NULL;
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1936,7 +1951,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_datetime`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_datetime, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL) order by id;
+WHERE select_id = 106 OR select_id IS NULL);
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1950,7 +1965,7 @@ CREATE VIEW v1 AS SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values;
SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL order by id;
+WHERE select_id = 105 OR select_id IS NULL;
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1962,7 +1977,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_double`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_double, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL) order by id;
+WHERE select_id = 105 OR select_id IS NULL);
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1976,7 +1991,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values;
SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL order by id;
+WHERE select_id = 104 OR select_id IS NULL;
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1988,7 +2003,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_decimal`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_decimal, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL) order by id;
+WHERE select_id = 104 OR select_id IS NULL);
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2002,7 +2017,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values;
SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL order by id;
+WHERE select_id = 103 OR select_id IS NULL;
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2014,7 +2029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_bigint`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_bigint, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL) order by id;
+WHERE select_id = 103 OR select_id IS NULL);
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2028,7 +2043,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL order by id;
+WHERE select_id = 102 OR select_id IS NULL;
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2040,7 +2055,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varbinary_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL) order by id;
+WHERE select_id = 102 OR select_id IS NULL);
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2054,7 +2069,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL order by id;
+WHERE select_id = 101 OR select_id IS NULL;
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2071,7 +2086,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_binary_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL) order by id;
+WHERE select_id = 101 OR select_id IS NULL);
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2090,7 +2105,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL order by id;
+WHERE select_id = 100 OR select_id IS NULL;
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2102,7 +2117,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varchar_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL) order by id;
+WHERE select_id = 100 OR select_id IS NULL);
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2116,7 +2131,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values;
SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL order by id;
+WHERE select_id = 99 OR select_id IS NULL;
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2131,7 +2146,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_char_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_char_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL) order by id;
+WHERE select_id = 99 OR select_id IS NULL);
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2148,7 +2163,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL order by id;
+WHERE select_id = 98 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2160,7 +2175,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using koi8r) AS `CONVERT(my_varbinary_1000 USING koi8r)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL) order by id;
+WHERE select_id = 98 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2174,7 +2189,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL order by id;
+WHERE select_id = 97 OR select_id IS NULL;
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2186,7 +2201,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using koi8r) AS `CONVERT(my_binary_30 USING koi8r)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL) order by id;
+WHERE select_id = 97 OR select_id IS NULL);
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2200,7 +2215,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL order by id;
+WHERE select_id = 96 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2212,7 +2227,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using koi8r) AS `CONVERT(my_varchar_1000 USING koi8r)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL) order by id;
+WHERE select_id = 96 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2226,7 +2241,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL order by id;
+WHERE select_id = 95 OR select_id IS NULL;
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2238,7 +2253,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using koi8r) AS `CONVERT(my_char_30 USING koi8r)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL) order by id;
+WHERE select_id = 95 OR select_id IS NULL);
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2252,7 +2267,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL order by id;
+WHERE select_id = 94 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2264,7 +2279,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using utf8) AS `CONVERT(my_varbinary_1000 USING utf8)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL) order by id;
+WHERE select_id = 94 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2278,7 +2293,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL order by id;
+WHERE select_id = 93 OR select_id IS NULL;
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2290,7 +2305,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using utf8) AS `CONVERT(my_binary_30 USING utf8)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL) order by id;
+WHERE select_id = 93 OR select_id IS NULL);
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2304,7 +2319,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL order by id;
+WHERE select_id = 92 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2316,7 +2331,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using utf8) AS `CONVERT(my_varchar_1000 USING utf8)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL) order by id;
+WHERE select_id = 92 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2330,7 +2345,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL order by id;
+WHERE select_id = 91 OR select_id IS NULL;
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2342,7 +2357,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using utf8) AS `CONVERT(my_char_30 USING utf8)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL) order by id;
+WHERE select_id = 91 OR select_id IS NULL);
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2356,7 +2371,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL order by id;
+WHERE select_id = 90 OR select_id IS NULL;
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2368,7 +2383,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as unsigned) AS `CAST(my_year AS UNSIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL) order by id;
+WHERE select_id = 90 OR select_id IS NULL);
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2382,37 +2397,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL order by id;
+WHERE select_id = 89 OR select_id IS NULL;
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as unsigned) AS `CAST(my_time AS UNSIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL) order by id;
+WHERE select_id = 89 OR select_id IS NULL);
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2420,37 +2423,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL order by id;
+WHERE select_id = 88 OR select_id IS NULL;
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as unsigned) AS `CAST(my_timestamp AS UNSIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL) order by id;
+WHERE select_id = 88 OR select_id IS NULL);
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2458,35 +2449,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL order by id;
+WHERE select_id = 87 OR select_id IS NULL;
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as unsigned) AS `CAST(my_date AS UNSIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL) order by id;
+WHERE select_id = 87 OR select_id IS NULL);
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2494,35 +2475,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL order by id;
+WHERE select_id = 86 OR select_id IS NULL;
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as unsigned) AS `CAST(my_datetime AS UNSIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL) order by id;
+WHERE select_id = 86 OR select_id IS NULL);
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2530,7 +2501,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL order by id;
+WHERE select_id = 85 OR select_id IS NULL;
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2546,7 +2517,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as unsigned) AS `CAST(my_decimal AS UNSIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL) order by id;
+WHERE select_id = 85 OR select_id IS NULL);
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2564,7 +2535,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL order by id;
+WHERE select_id = 84 OR select_id IS NULL;
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2576,7 +2547,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as unsigned) AS `CAST(my_bigint AS UNSIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL) order by id;
+WHERE select_id = 84 OR select_id IS NULL);
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2590,7 +2561,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL order by id;
+WHERE select_id = 83 OR select_id IS NULL;
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2607,7 +2578,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as unsigned) AS `CAST(my_varbinary_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL) order by id;
+WHERE select_id = 83 OR select_id IS NULL);
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2626,7 +2597,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL order by id;
+WHERE select_id = 82 OR select_id IS NULL;
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2644,7 +2615,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as unsigned) AS `CAST(my_binary_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL) order by id;
+WHERE select_id = 82 OR select_id IS NULL);
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2664,7 +2635,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL order by id;
+WHERE select_id = 81 OR select_id IS NULL;
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2681,7 +2652,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as unsigned) AS `CAST(my_varchar_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL) order by id;
+WHERE select_id = 81 OR select_id IS NULL);
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2700,7 +2671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL order by id;
+WHERE select_id = 80 OR select_id IS NULL;
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2717,7 +2688,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as unsigned) AS `CAST(my_char_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL) order by id;
+WHERE select_id = 80 OR select_id IS NULL);
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2736,7 +2707,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL order by id;
+WHERE select_id = 79 OR select_id IS NULL;
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2748,7 +2719,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as signed) AS `CAST(my_year AS SIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL) order by id;
+WHERE select_id = 79 OR select_id IS NULL);
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2762,35 +2733,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL order by id;
+WHERE select_id = 78 OR select_id IS NULL;
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as signed) AS `CAST(my_time AS SIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL) order by id;
+WHERE select_id = 78 OR select_id IS NULL);
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2798,37 +2759,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL order by id;
+WHERE select_id = 77 OR select_id IS NULL;
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as signed) AS `CAST(my_timestamp AS SIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL) order by id;
+WHERE select_id = 77 OR select_id IS NULL);
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2836,35 +2785,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL order by id;
+WHERE select_id = 76 OR select_id IS NULL;
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as signed) AS `CAST(my_date AS SIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL) order by id;
+WHERE select_id = 76 OR select_id IS NULL);
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2872,67 +2811,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL order by id;
+WHERE select_id = 75 OR select_id IS NULL;
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as signed) AS `CAST(my_datetime AS SIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL) order by id;
+WHERE select_id = 75 OR select_id IS NULL);
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as signed) AS `CAST(my_double AS SIGNED INTEGER)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL) order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2940,11 +2837,11 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL order by id;
+WHERE select_id = 74 OR select_id IS NULL;
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2955,11 +2852,11 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as signed) AS `CAST(my_decimal AS SIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL) order by id;
+WHERE select_id = 74 OR select_id IS NULL);
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2972,7 +2869,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL order by id;
+WHERE select_id = 73 OR select_id IS NULL;
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2984,7 +2881,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as signed) AS `CAST(my_bigint AS SIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL) order by id;
+WHERE select_id = 73 OR select_id IS NULL);
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2998,7 +2895,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL order by id;
+WHERE select_id = 72 OR select_id IS NULL;
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3014,7 +2911,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as signed) AS `CAST(my_varbinary_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL) order by id;
+WHERE select_id = 72 OR select_id IS NULL);
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3032,7 +2929,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL order by id;
+WHERE select_id = 71 OR select_id IS NULL;
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3049,7 +2946,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as signed) AS `CAST(my_binary_30 AS SIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL) order by id;
+WHERE select_id = 71 OR select_id IS NULL);
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3068,7 +2965,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL order by id;
+WHERE select_id = 70 OR select_id IS NULL;
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3084,7 +2981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as signed) AS `CAST(my_varchar_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL) order by id;
+WHERE select_id = 70 OR select_id IS NULL);
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3102,7 +2999,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL order by id;
+WHERE select_id = 69 OR select_id IS NULL;
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3118,7 +3015,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as signed) AS `CAST(my_char_30 AS SIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL) order by id;
+WHERE select_id = 69 OR select_id IS NULL);
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3132,287 +3029,217 @@ Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$--'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values;
-SELECT CAST(my_year AS DECIMAL),
+SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL;
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal) AS `CAST(my_year AS DECIMAL)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal(37,2)) AS `CAST(my_year AS DECIMAL(37,2))`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL) order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL);
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values;
-SELECT CAST(my_time AS DECIMAL),
+SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL;
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal) AS `CAST(my_time AS DECIMAL)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal(37,2)) AS `CAST(my_time AS DECIMAL(37,2))`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL) order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL);
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values;
-SELECT CAST(my_timestamp AS DECIMAL),
+SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL;
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal) AS `CAST(my_timestamp AS DECIMAL)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal(37,2)) AS `CAST(my_timestamp AS DECIMAL(37,2))`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL) order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL);
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values;
-SELECT CAST(my_date AS DECIMAL),
+SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL;
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal) AS `CAST(my_date AS DECIMAL)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal(37,2)) AS `CAST(my_date AS DECIMAL(37,2))`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL) order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL);
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values;
-SELECT CAST(my_datetime AS DECIMAL),
+SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
-NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal) AS `CAST(my_datetime AS DECIMAL)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL) order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
+WHERE select_id = 64 OR select_id IS NULL;
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL order by id;
-CAST(my_double AS DECIMAL) my_double id
-NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as decimal) AS `CAST(my_double AS DECIMAL)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal(37,2)) AS `CAST(my_datetime AS DECIMAL(37,2))`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL) order by id;
-CAST(my_double AS DECIMAL) my_double id
+WHERE select_id = 64 OR select_id IS NULL);
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values;
-SELECT CAST(my_decimal AS DECIMAL),
+SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL;
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal) AS `CAST(my_decimal AS DECIMAL)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal(37,2)) AS `CAST(my_decimal AS DECIMAL(37,2))`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL) order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL);
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values;
-SELECT CAST(my_bigint AS DECIMAL),
+SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL;
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal) AS `CAST(my_bigint AS DECIMAL)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal(37,2)) AS `CAST(my_bigint AS DECIMAL(37,2))`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL) order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL);
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values;
-SELECT CAST(my_varbinary_1000 AS DECIMAL),
+SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+WHERE select_id = 61 OR select_id IS NULL;
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal) AS `CAST(my_varbinary_1000 AS DECIMAL)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal(37,2)) AS `CAST(my_varbinary_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL) order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
+WHERE select_id = 61 OR select_id IS NULL);
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3420,18 +3247,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values;
-SELECT CAST(my_binary_30 AS DECIMAL),
+SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
-NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+WHERE select_id = 60 OR select_id IS NULL;
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
+NULL NULL 1
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3443,17 +3270,17 @@ Warning 1292 Truncated incorrect DECIMAL value: '-1'
Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal) AS `CAST(my_binary_30 AS DECIMAL)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal(37,2)) AS `CAST(my_binary_30 AS DECIMAL(37,2))`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL) order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
+WHERE select_id = 60 OR select_id IS NULL);
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3466,35 +3293,35 @@ Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values;
-SELECT CAST(my_varchar_1000 AS DECIMAL),
+SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+WHERE select_id = 59 OR select_id IS NULL;
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal) AS `CAST(my_varchar_1000 AS DECIMAL)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal(37,2)) AS `CAST(my_varchar_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL) order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
+WHERE select_id = 59 OR select_id IS NULL);
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3502,18 +3329,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values;
-SELECT CAST(my_char_30 AS DECIMAL),
+SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
-NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+WHERE select_id = 58 OR select_id IS NULL;
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
+NULL NULL 1
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3523,17 +3350,17 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- '
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal) AS `CAST(my_char_30 AS DECIMAL)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal(37,2)) AS `CAST(my_char_30 AS DECIMAL(37,2))`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL) order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
+WHERE select_id = 58 OR select_id IS NULL);
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3548,7 +3375,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL order by id;
+WHERE select_id = 57 OR select_id IS NULL;
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3560,7 +3387,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as time) AS `CAST(my_year AS TIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL) order by id;
+WHERE select_id = 57 OR select_id IS NULL);
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3574,7 +3401,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL order by id;
+WHERE select_id = 56 OR select_id IS NULL;
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3586,7 +3413,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as time) AS `CAST(my_time AS TIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL) order by id;
+WHERE select_id = 56 OR select_id IS NULL);
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3600,7 +3427,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL order by id;
+WHERE select_id = 55 OR select_id IS NULL;
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3612,7 +3439,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as time) AS `CAST(my_timestamp AS TIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL) order by id;
+WHERE select_id = 55 OR select_id IS NULL);
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3626,7 +3453,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL order by id;
+WHERE select_id = 54 OR select_id IS NULL;
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3638,7 +3465,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as time) AS `CAST(my_date AS TIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL) order by id;
+WHERE select_id = 54 OR select_id IS NULL);
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3652,7 +3479,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL order by id;
+WHERE select_id = 53 OR select_id IS NULL;
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3664,7 +3491,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as time) AS `CAST(my_datetime AS TIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL) order by id;
+WHERE select_id = 53 OR select_id IS NULL);
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3674,45 +3501,11 @@ NULL NULL 1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as time) AS `CAST(my_double AS TIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL) order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-DROP VIEW v1;
-
-
CREATE VIEW v1 AS SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL order by id;
+WHERE select_id = 52 OR select_id IS NULL;
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3728,7 +3521,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as time) AS `CAST(my_bigint AS TIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL) order by id;
+WHERE select_id = 52 OR select_id IS NULL);
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3746,7 +3539,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL order by id;
+WHERE select_id = 51 OR select_id IS NULL;
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3763,7 +3556,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as time) AS `CAST(my_varbinary_1000 AS TIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL) order by id;
+WHERE select_id = 51 OR select_id IS NULL);
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3782,7 +3575,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL order by id;
+WHERE select_id = 50 OR select_id IS NULL;
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3801,7 +3594,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as time) AS `CAST(my_binary_30 AS TIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL) order by id;
+WHERE select_id = 50 OR select_id IS NULL);
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3822,7 +3615,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL order by id;
+WHERE select_id = 49 OR select_id IS NULL;
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3839,7 +3632,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as time) AS `CAST(my_varchar_1000 AS TIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL) order by id;
+WHERE select_id = 49 OR select_id IS NULL);
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3858,7 +3651,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL order by id;
+WHERE select_id = 48 OR select_id IS NULL;
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3875,7 +3668,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as time) AS `CAST(my_char_30 AS TIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL) order by id;
+WHERE select_id = 48 OR select_id IS NULL);
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3894,7 +3687,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL order by id;
+WHERE select_id = 47 OR select_id IS NULL;
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3902,16 +3695,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as datetime) AS `CAST(my_year AS DATETIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL) order by id;
+WHERE select_id = 47 OR select_id IS NULL);
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3919,10 +3712,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -3930,7 +3723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL order by id;
+WHERE select_id = 46 OR select_id IS NULL;
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3938,14 +3731,14 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as datetime) AS `CAST(my_time AS DATETIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL) order by id;
+WHERE select_id = 46 OR select_id IS NULL);
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3953,8 +3746,8 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
DROP VIEW v1;
@@ -3962,7 +3755,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL order by id;
+WHERE select_id = 45 OR select_id IS NULL;
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3974,7 +3767,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as datetime) AS `CAST(my_timestamp AS DATETIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL) order by id;
+WHERE select_id = 45 OR select_id IS NULL);
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3988,7 +3781,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL order by id;
+WHERE select_id = 44 OR select_id IS NULL;
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4000,7 +3793,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as datetime) AS `CAST(my_date AS DATETIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL) order by id;
+WHERE select_id = 44 OR select_id IS NULL);
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4014,7 +3807,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL order by id;
+WHERE select_id = 43 OR select_id IS NULL;
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4026,7 +3819,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as datetime) AS `CAST(my_datetime AS DATETIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL) order by id;
+WHERE select_id = 43 OR select_id IS NULL);
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4040,7 +3833,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL order by id;
+WHERE select_id = 42 OR select_id IS NULL;
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4049,17 +3842,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as datetime) AS `CAST(my_double AS DATETIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL) order by id;
+WHERE select_id = 42 OR select_id IS NULL);
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4068,11 +3861,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4080,7 +3873,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL order by id;
+WHERE select_id = 41 OR select_id IS NULL;
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4089,17 +3882,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as datetime) AS `CAST(my_bigint AS DATETIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL) order by id;
+WHERE select_id = 41 OR select_id IS NULL);
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4108,11 +3901,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4120,7 +3913,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL order by id;
+WHERE select_id = 40 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4129,16 +3922,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as datetime) AS `CAST(my_varbinary_1000 AS DATETIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL) order by id;
+WHERE select_id = 40 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4147,10 +3940,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4158,7 +3951,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL order by id;
+WHERE select_id = 39 OR select_id IS NULL;
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4167,17 +3960,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as datetime) AS `CAST(my_binary_30 AS DATETIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL) order by id;
+WHERE select_id = 39 OR select_id IS NULL);
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4186,10 +3979,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
DROP VIEW v1;
@@ -4198,7 +3991,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL order by id;
+WHERE select_id = 38 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4207,16 +4000,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as datetime) AS `CAST(my_varchar_1000 AS DATETIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL) order by id;
+WHERE select_id = 38 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4225,10 +4018,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4236,7 +4029,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL order by id;
+WHERE select_id = 37 OR select_id IS NULL;
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4245,16 +4038,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as datetime) AS `CAST(my_char_30 AS DATETIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL) order by id;
+WHERE select_id = 37 OR select_id IS NULL);
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4263,10 +4056,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4274,7 +4067,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL order by id;
+WHERE select_id = 36 OR select_id IS NULL;
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4282,16 +4075,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as date) AS `CAST(my_year AS DATE)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL) order by id;
+WHERE select_id = 36 OR select_id IS NULL);
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4299,10 +4092,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -4310,7 +4103,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL order by id;
+WHERE select_id = 35 OR select_id IS NULL;
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4322,7 +4115,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as date) AS `CAST(my_time AS DATE)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL) order by id;
+WHERE select_id = 35 OR select_id IS NULL);
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4336,7 +4129,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL order by id;
+WHERE select_id = 34 OR select_id IS NULL;
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4348,7 +4141,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as date) AS `CAST(my_timestamp AS DATE)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL) order by id;
+WHERE select_id = 34 OR select_id IS NULL);
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4362,7 +4155,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL order by id;
+WHERE select_id = 33 OR select_id IS NULL;
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4374,7 +4167,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as date) AS `CAST(my_date AS DATE)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL) order by id;
+WHERE select_id = 33 OR select_id IS NULL);
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4388,7 +4181,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL order by id;
+WHERE select_id = 32 OR select_id IS NULL;
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4400,7 +4193,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as date) AS `CAST(my_datetime AS DATE)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL) order by id;
+WHERE select_id = 32 OR select_id IS NULL);
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4414,7 +4207,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL order by id;
+WHERE select_id = 31 OR select_id IS NULL;
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4423,16 +4216,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as date) AS `CAST(my_double AS DATE)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL) order by id;
+WHERE select_id = 31 OR select_id IS NULL);
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4441,10 +4234,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4452,7 +4245,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL order by id;
+WHERE select_id = 30 OR select_id IS NULL;
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4461,16 +4254,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as date) AS `CAST(my_bigint AS DATE)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL) order by id;
+WHERE select_id = 30 OR select_id IS NULL);
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4479,10 +4272,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4490,7 +4283,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL order by id;
+WHERE select_id = 29 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4499,16 +4292,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as date) AS `CAST(my_varbinary_1000 AS DATE)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL) order by id;
+WHERE select_id = 29 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4517,10 +4310,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4528,7 +4321,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL order by id;
+WHERE select_id = 28 OR select_id IS NULL;
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4537,17 +4330,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as date) AS `CAST(my_binary_30 AS DATE)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL) order by id;
+WHERE select_id = 28 OR select_id IS NULL);
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4556,10 +4349,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
DROP VIEW v1;
@@ -4568,7 +4361,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL order by id;
+WHERE select_id = 27 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4577,16 +4370,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as date) AS `CAST(my_varchar_1000 AS DATE)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL) order by id;
+WHERE select_id = 27 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4595,10 +4388,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4606,7 +4399,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL order by id;
+WHERE select_id = 26 OR select_id IS NULL;
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4615,16 +4408,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as date) AS `CAST(my_char_30 AS DATE)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL) order by id;
+WHERE select_id = 26 OR select_id IS NULL);
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4633,10 +4426,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4644,7 +4437,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values;
SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL order by id;
+WHERE select_id = 25 OR select_id IS NULL;
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4656,7 +4449,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset latin1) AS `CAST(my_year AS CHAR)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL) order by id;
+WHERE select_id = 25 OR select_id IS NULL);
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4670,7 +4463,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values;
SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL order by id;
+WHERE select_id = 24 OR select_id IS NULL;
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4682,7 +4475,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset latin1) AS `CAST(my_time AS CHAR)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL) order by id;
+WHERE select_id = 24 OR select_id IS NULL);
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4696,7 +4489,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL order by id;
+WHERE select_id = 23 OR select_id IS NULL;
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4708,7 +4501,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset latin1) AS `CAST(my_timestamp AS CHAR)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL) order by id;
+WHERE select_id = 23 OR select_id IS NULL);
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4722,7 +4515,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values;
SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL order by id;
+WHERE select_id = 22 OR select_id IS NULL;
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4734,7 +4527,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset latin1) AS `CAST(my_date AS CHAR)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL) order by id;
+WHERE select_id = 22 OR select_id IS NULL);
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4748,7 +4541,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL order by id;
+WHERE select_id = 21 OR select_id IS NULL;
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4760,7 +4553,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset latin1) AS `CAST(my_datetime AS CHAR)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL) order by id;
+WHERE select_id = 21 OR select_id IS NULL);
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4774,7 +4567,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values;
SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL order by id;
+WHERE select_id = 20 OR select_id IS NULL;
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4786,7 +4579,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset latin1) AS `CAST(my_double AS CHAR)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL) order by id;
+WHERE select_id = 20 OR select_id IS NULL);
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4800,7 +4593,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL order by id;
+WHERE select_id = 19 OR select_id IS NULL;
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4812,7 +4605,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset latin1) AS `CAST(my_decimal AS CHAR)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL) order by id;
+WHERE select_id = 19 OR select_id IS NULL);
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4826,7 +4619,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL order by id;
+WHERE select_id = 18 OR select_id IS NULL;
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4838,7 +4631,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset latin1) AS `CAST(my_bigint AS CHAR)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL) order by id;
+WHERE select_id = 18 OR select_id IS NULL);
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4852,7 +4645,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL order by id;
+WHERE select_id = 17 OR select_id IS NULL;
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4864,7 +4657,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset latin1) AS `CAST(my_varbinary_1000 AS CHAR)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL) order by id;
+WHERE select_id = 17 OR select_id IS NULL);
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4878,7 +4671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL order by id;
+WHERE select_id = 16 OR select_id IS NULL;
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4890,7 +4683,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset latin1) AS `CAST(my_binary_30 AS CHAR)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL) order by id;
+WHERE select_id = 16 OR select_id IS NULL);
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4904,7 +4697,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL order by id;
+WHERE select_id = 15 OR select_id IS NULL;
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4916,7 +4709,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset latin1) AS `CAST(my_varchar_1000 AS CHAR)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL) order by id;
+WHERE select_id = 15 OR select_id IS NULL);
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4930,7 +4723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL order by id;
+WHERE select_id = 14 OR select_id IS NULL;
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4942,7 +4735,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset latin1) AS `CAST(my_char_30 AS CHAR)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL) order by id;
+WHERE select_id = 14 OR select_id IS NULL);
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4956,7 +4749,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values;
SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL order by id;
+WHERE select_id = 13 OR select_id IS NULL;
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4968,7 +4761,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset binary) AS `CAST(my_year AS BINARY)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL) order by id;
+WHERE select_id = 13 OR select_id IS NULL);
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4982,7 +4775,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values;
SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL order by id;
+WHERE select_id = 12 OR select_id IS NULL;
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4994,7 +4787,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset binary) AS `CAST(my_time AS BINARY)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL) order by id;
+WHERE select_id = 12 OR select_id IS NULL);
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -5008,7 +4801,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL order by id;
+WHERE select_id = 11 OR select_id IS NULL;
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5020,7 +4813,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset binary) AS `CAST(my_timestamp AS BINARY)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL) order by id;
+WHERE select_id = 11 OR select_id IS NULL);
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5034,7 +4827,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values;
SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL order by id;
+WHERE select_id = 10 OR select_id IS NULL;
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5046,7 +4839,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset binary) AS `CAST(my_date AS BINARY)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL) order by id;
+WHERE select_id = 10 OR select_id IS NULL);
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5060,7 +4853,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL order by id;
+WHERE select_id = 9 OR select_id IS NULL;
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5072,7 +4865,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset binary) AS `CAST(my_datetime AS BINARY)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL) order by id;
+WHERE select_id = 9 OR select_id IS NULL);
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5086,7 +4879,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values;
SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL order by id;
+WHERE select_id = 8 OR select_id IS NULL;
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5098,7 +4891,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset binary) AS `CAST(my_double AS BINARY)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL) order by id;
+WHERE select_id = 8 OR select_id IS NULL);
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5112,7 +4905,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL order by id;
+WHERE select_id = 7 OR select_id IS NULL;
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5124,7 +4917,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset binary) AS `CAST(my_decimal AS BINARY)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL) order by id;
+WHERE select_id = 7 OR select_id IS NULL);
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5138,7 +4931,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL order by id;
+WHERE select_id = 6 OR select_id IS NULL;
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5150,7 +4943,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset binary) AS `CAST(my_bigint AS BINARY)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL) order by id;
+WHERE select_id = 6 OR select_id IS NULL);
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5164,7 +4957,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL order by id;
+WHERE select_id = 5 OR select_id IS NULL;
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5176,7 +4969,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset binary) AS `CAST(my_varbinary_1000 AS BINARY)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL) order by id;
+WHERE select_id = 5 OR select_id IS NULL);
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5190,7 +4983,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL order by id;
+WHERE select_id = 4 OR select_id IS NULL;
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5202,7 +4995,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset binary) AS `CAST(my_binary_30 AS BINARY)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL) order by id;
+WHERE select_id = 4 OR select_id IS NULL);
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5216,7 +5009,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL order by id;
+WHERE select_id = 3 OR select_id IS NULL;
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5228,7 +5021,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset binary) AS `CAST(my_varchar_1000 AS BINARY)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL) order by id;
+WHERE select_id = 3 OR select_id IS NULL);
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5242,7 +5035,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL order by id;
+WHERE select_id = 2 OR select_id IS NULL;
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5254,7 +5047,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset binary) AS `CAST(my_char_30 AS BINARY)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL) order by id;
+WHERE select_id = 2 OR select_id IS NULL);
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5266,7 +5059,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT sqrt(my_bigint), my_bigint, id FROM t1_values;
SELECT sqrt(my_bigint), my_bigint, id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL order by id;
+WHERE select_id = 1 OR select_id IS NULL;
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -5280,7 +5073,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sqrt(`t1_values`.`my_bigint`) AS `sqrt(my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL) order by id;
+WHERE select_id = 1 OR select_id IS NULL);
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result
index 60ea7393c73..60ea7393c73 100644..100755
--- a/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result
+++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_02.result
diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_03.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_03.result
index fe400ceeb6d..fe400ceeb6d 100644..100755
--- a/mysql-test/suite/funcs_1/r/innodb_storedproc_03.result
+++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_03.result
diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_07.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_07.result
index cbe20882ec2..cbe20882ec2 100644..100755
--- a/mysql-test/suite/funcs_1/r/innodb_storedproc_07.result
+++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_07.result
diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_08.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_08.result
index 91a3a954f57..91a3a954f57 100644..100755
--- a/mysql-test/suite/funcs_1/r/innodb_storedproc_08.result
+++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_08.result
diff --git a/mysql-test/suite/funcs_1/r/innodb_storedproc_10.result b/mysql-test/suite/funcs_1/r/innodb_storedproc_10.result
index 5bb5b3cbbc2..5bb5b3cbbc2 100644..100755
--- a/mysql-test/suite/funcs_1/r/innodb_storedproc_10.result
+++ b/mysql-test/suite/funcs_1/r/innodb_storedproc_10.result
diff --git a/mysql-test/suite/funcs_1/r/innodb_trig_0102.result b/mysql-test/suite/funcs_1/r/innodb_trig_0102.result
index 02a82db0901..5a4b179144f 100644
--- a/mysql-test/suite/funcs_1/r/innodb_trig_0102.result
+++ b/mysql-test/suite/funcs_1/r/innodb_trig_0102.result
@@ -242,7 +242,7 @@ create table t1 (f1 integer) engine = innodb;
use test;
CREATE TRIGGER trig_db.trg6_2 AFTER INSERT on tb3
for each row set @ret_trg6_2 = 5;
-ERROR HY000: Trigger in wrong schema
+ERROR 42S02: Table 'trig_db.tb3' doesn't exist
use trig_db;
CREATE TRIGGER trg6_3 AFTER INSERT on test.tb3
for each row set @ret_trg6_3 = 18;
diff --git a/mysql-test/suite/funcs_1/r/innodb_trig_08.result b/mysql-test/suite/funcs_1/r/innodb_trig_08.result
index 44d53923241..4388950aba1 100644
--- a/mysql-test/suite/funcs_1/r/innodb_trig_08.result
+++ b/mysql-test/suite/funcs_1/r/innodb_trig_08.result
@@ -492,9 +492,8 @@ BEGIN
WHILE @counter1 < new.f136
SET @counter1 = @counter1 + 1;
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 'WHILE @counter1 < new.f136
-SET @counter1 = @counter1 + 1;
-END' at line 3
+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 'SET @counter1 = @counter1 + 1;
+END' at line 4
delete from tb3 where f122='Test 3.5.8.5-while';
drop trigger trg7;
diff --git a/mysql-test/suite/funcs_1/r/innodb_views.result b/mysql-test/suite/funcs_1/r/innodb_views.result
index be0f36f49be..ec234125eab 100644
--- a/mysql-test/suite/funcs_1/r/innodb_views.result
+++ b/mysql-test/suite/funcs_1/r/innodb_views.result
@@ -10202,7 +10202,8 @@ SHOW FIELDS FROM v1;
ERROR 42S02: Table 'test.v1' doesn't exist
CHECK TABLE v1;
Table Op Msg_type Msg_text
-test.v1 check error Table 'test.v1' doesn't exist
+test.v1 check Error Table 'test.v1' doesn't exist
+test.v1 check error Corrupt
DESCRIBE v1;
ERROR 42S02: Table 'test.v1' doesn't exist
EXPLAIN SELECT * FROM v1;
diff --git a/mysql-test/suite/funcs_1/r/memory__datadict.result b/mysql-test/suite/funcs_1/r/memory__datadict.result
index 0ef00f0e553..c76fee20478 100644
--- a/mysql-test/suite/funcs_1/r/memory__datadict.result
+++ b/mysql-test/suite/funcs_1/r/memory__datadict.result
@@ -6038,6 +6038,7 @@ INTO OUTFILE '../tmp/out.memory.db.file'
WHERE schema_name LIKE 'db_%';
CREATE USER user_3212@localhost;
GRANT ALL ON db_datadict.* TO user_3212@localhost;
+GRANT FILE ON *.* TO user_3212@localhost;
connect(localhost,user_3212,,db_datadict,MYSQL_PORT,MYSQL_SOCK);
user_3212@localhost db_datadict
@@ -6046,7 +6047,7 @@ INTO OUTFILE '../tmp/out.memory.user.file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM schemata LIMIT 0, 5;
-ERROR 28000: Access denied for user 'user_3212'@'localhost' (using password: NO)
+ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
SELECT *
FROM schemata LIMIT 0, 5;
ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
diff --git a/mysql-test/suite/funcs_1/r/memory_func_view.result b/mysql-test/suite/funcs_1/r/memory_func_view.result
index ab4508fb302..552b549a1a0 100644
--- a/mysql-test/suite/funcs_1/r/memory_func_view.result
+++ b/mysql-test/suite/funcs_1/r/memory_func_view.result
@@ -9,7 +9,7 @@ CREATE TABLE t1_values
id BIGINT AUTO_INCREMENT,
select_id BIGINT,
PRIMARY KEY(id)
-) ENGINE = <engine_to_be_tested>;
+) ENGINE = 'MEMORY' ;
ALTER TABLE t1_values ADD my_char_30 CHAR(30);
ALTER TABLE t1_values ADD my_varchar_1000 VARCHAR(1000);
ALTER TABLE t1_values ADD my_binary_30 BINARY(30);
@@ -123,8 +123,10 @@ INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '1 17:58';
INSERT INTO t1_values SET select_id = @select_id,
my_bigint = 1758;
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = +1.758E+3;
+
+some statements disabled because of
+Bug#12440: CAST(data type DOUBLE AS TIME) strange results
+--------------------------------------------------------------------------------
INSERT INTO t1_values SET select_id = @select_id,
my_char_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
@@ -133,20 +135,29 @@ INSERT INTO t1_values SET select_id = @select_id,
my_binary_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '-3333.3333';
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = -0.33333333E+4;
+
+some statements disabled because of
+Bug#13349: CAST(1.0E+300 TO DECIMAL) returns wrong result + diff little/big endian
+--------------------------------------------------------------------------------
"Attention: CAST --> SIGNED INTEGER
+ The file with expected results suffers from
+ Bug#5083 Big integer values are inserted as negative into
+ decimal/string columns
Bug#5913 Traditional mode: BIGINT range not correctly delimited
- Status: To be fixed later"
+ Both have the status: To be fixed later"
+--------------------------------------------------------------------------------
+
+some statements disabled because of
+Bug #13344: CAST(1E+300 TO signed int) on little endian CPU, wrong result
--------------------------------------------------------------------------------
"Attention: CAST --> UNSIGNED INTEGER
- The file with expected results suffers from Bug 5913"
+ The file with expected results suffers from Bug 5083 5913 9809"
--------------------------------------------------------------------------------
some statements disabled because of
-Bug#5913 Traditional mode: BIGINT range not correctly delimited
+Bugs#8663: cant use bgint unsigned as input to cast
--------------------------------------------------------------------------------
SET @my_select = 'SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values';
@@ -164,6 +175,11 @@ SET @my_select = 'SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values';
+
+"Attention: IF(my_year IS NULL, ...
+ The file with expected results suffers from
+ Bug#11689. successful CREATE VIEW but SELECT on view fails."
+--------------------------------------------------------------------------------
SET @my_select = 'SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT BIT_LENGTH(my_varchar_1000),
@@ -186,7 +202,7 @@ SET @my_select =
'SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values';
"Attention: LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', <numeric column>)
- The file with expected results suffers from Bug 10963"
+ The file with expected results suffers from Bug 10963 11728"
and the testcases with length = BIGINT or DOUBLE column are deactivated,
because there are 32/64 Bit differences
--------------------------------------------------------------------------------
@@ -200,9 +216,8 @@ SET @my_select = 'SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values';
-SELECT 'äÄ@' INTO OUTFILE '../tmp/func_view.dat';
SET @my_select =
-'SELECT LOAD_FILE(''../tmp/func_view.dat''), id FROM t1_values';
+'SELECT LOAD_FILE(''../log/current_test''), id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_varchar_1000),
@@ -284,19 +299,19 @@ SET sql_mode = '';
--------------------------------------------------------------------------------
CREATE VIEW v1 AS SELECT my_char_30, id FROM t1_values;
SELECT my_char_30, id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL order by id;
+WHERE select_id = 187 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL) order by id;
+WHERE select_id = 187 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values;
SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL order by id;
+WHERE select_id = 186 OR select_id IS NULL;
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -308,7 +323,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select concat(_latin1'A',`t1_values`.`my_char_30`) AS `CONCAT('A',my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL) order by id;
+WHERE select_id = 186 OR select_id IS NULL);
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -322,13 +337,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL order by id;
+WHERE select_id = 185 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varbinary_1000`) AS `LTRIM(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL) order by id;
+WHERE select_id = 185 OR select_id IS NULL);
DROP VIEW v1;
@@ -336,13 +351,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL order by id;
+WHERE select_id = 184 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_binary_30`) AS `LTRIM(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL) order by id;
+WHERE select_id = 184 OR select_id IS NULL);
DROP VIEW v1;
@@ -350,13 +365,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL order by id;
+WHERE select_id = 183 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varchar_1000`) AS `LTRIM(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL) order by id;
+WHERE select_id = 183 OR select_id IS NULL);
DROP VIEW v1;
@@ -364,13 +379,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values;
SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL order by id;
+WHERE select_id = 182 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_char_30`) AS `LTRIM(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL) order by id;
+WHERE select_id = 182 OR select_id IS NULL);
DROP VIEW v1;
@@ -378,13 +393,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL order by id;
+WHERE select_id = 181 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varbinary_1000`) AS `LOWER(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL) order by id;
+WHERE select_id = 181 OR select_id IS NULL);
DROP VIEW v1;
@@ -392,13 +407,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL order by id;
+WHERE select_id = 180 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_binary_30`) AS `LOWER(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL) order by id;
+WHERE select_id = 180 OR select_id IS NULL);
DROP VIEW v1;
@@ -406,13 +421,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL order by id;
+WHERE select_id = 179 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LOWER(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL) order by id;
+WHERE select_id = 179 OR select_id IS NULL);
DROP VIEW v1;
@@ -420,13 +435,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values;
SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL order by id;
+WHERE select_id = 178 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_char_30`) AS `LOWER(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL) order by id;
+WHERE select_id = 178 OR select_id IS NULL);
DROP VIEW v1;
@@ -434,13 +449,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL order by id;
+WHERE select_id = 177 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_decimal`) AS `LOCATE('-', ' - -ABC', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL) order by id;
+WHERE select_id = 177 OR select_id IS NULL);
DROP VIEW v1;
@@ -448,13 +463,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL order by id;
+WHERE select_id = 176 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_double`) AS `LOCATE('-', ' - -ABC', my_double)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL) order by id;
+WHERE select_id = 176 OR select_id IS NULL);
DROP VIEW v1;
@@ -462,13 +477,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL order by id;
+WHERE select_id = 175 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_bigint`) AS `LOCATE('-', ' - -ABC', my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL) order by id;
+WHERE select_id = 175 OR select_id IS NULL);
DROP VIEW v1;
@@ -476,13 +491,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL order by id;
+WHERE select_id = 174 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varbinary_1000`,3) AS `LOCATE('-', my_varbinary_1000, 3)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL) order by id;
+WHERE select_id = 174 OR select_id IS NULL);
DROP VIEW v1;
@@ -490,13 +505,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values;
SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL order by id;
+WHERE select_id = 173 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_binary_30`,3) AS `LOCATE('-', my_binary_30, 3)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL) order by id;
+WHERE select_id = 173 OR select_id IS NULL);
DROP VIEW v1;
@@ -504,13 +519,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL order by id;
+WHERE select_id = 172 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varchar_1000`,3) AS `LOCATE('-', my_varchar_1000, 3)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL) order by id;
+WHERE select_id = 172 OR select_id IS NULL);
DROP VIEW v1;
@@ -518,13 +533,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values;
SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL order by id;
+WHERE select_id = 171 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_char_30`,3) AS `LOCATE('-', my_char_30, 3)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL) order by id;
+WHERE select_id = 171 OR select_id IS NULL);
DROP VIEW v1;
@@ -532,13 +547,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL order by id;
+WHERE select_id = 170 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varbinary_1000, my_binary_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL) order by id;
+WHERE select_id = 170 OR select_id IS NULL);
DROP VIEW v1;
@@ -546,13 +561,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL order by id;
+WHERE select_id = 169 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varbinary_1000, my_varchar_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL) order by id;
+WHERE select_id = 169 OR select_id IS NULL);
DROP VIEW v1;
@@ -560,13 +575,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL order by id;
+WHERE select_id = 168 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varbinary_1000, my_char_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL) order by id;
+WHERE select_id = 168 OR select_id IS NULL);
DROP VIEW v1;
@@ -574,13 +589,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL order by id;
+WHERE select_id = 167 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varbinary_1000, my_varbinary_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL) order by id;
+WHERE select_id = 167 OR select_id IS NULL);
DROP VIEW v1;
@@ -588,13 +603,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL order by id;
+WHERE select_id = 166 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_binary_30, my_varbinary_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL) order by id;
+WHERE select_id = 166 OR select_id IS NULL);
DROP VIEW v1;
@@ -602,13 +617,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL order by id;
+WHERE select_id = 165 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_binary_30, my_varchar_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL) order by id;
+WHERE select_id = 165 OR select_id IS NULL);
DROP VIEW v1;
@@ -616,13 +631,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL order by id;
+WHERE select_id = 164 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_binary_30, my_char_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL) order by id;
+WHERE select_id = 164 OR select_id IS NULL);
DROP VIEW v1;
@@ -630,13 +645,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values;
SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL order by id;
+WHERE select_id = 163 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_binary_30, my_binary_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL) order by id;
+WHERE select_id = 163 OR select_id IS NULL);
DROP VIEW v1;
@@ -644,13 +659,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL order by id;
+WHERE select_id = 162 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varchar_1000, my_varbinary_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL) order by id;
+WHERE select_id = 162 OR select_id IS NULL);
DROP VIEW v1;
@@ -658,13 +673,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL order by id;
+WHERE select_id = 161 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varchar_1000, my_binary_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL) order by id;
+WHERE select_id = 161 OR select_id IS NULL);
DROP VIEW v1;
@@ -672,13 +687,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL order by id;
+WHERE select_id = 160 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varchar_1000, my_char_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL) order by id;
+WHERE select_id = 160 OR select_id IS NULL);
DROP VIEW v1;
@@ -686,13 +701,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL order by id;
+WHERE select_id = 159 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varchar_1000, my_varchar_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL) order by id;
+WHERE select_id = 159 OR select_id IS NULL);
DROP VIEW v1;
@@ -700,13 +715,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL order by id;
+WHERE select_id = 158 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_char_30, my_varbinary_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL) order by id;
+WHERE select_id = 158 OR select_id IS NULL);
DROP VIEW v1;
@@ -714,13 +729,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL order by id;
+WHERE select_id = 157 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_char_30, my_binary_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL) order by id;
+WHERE select_id = 157 OR select_id IS NULL);
DROP VIEW v1;
@@ -728,13 +743,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL order by id;
+WHERE select_id = 156 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_char_30, my_varchar_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL) order by id;
+WHERE select_id = 156 OR select_id IS NULL);
DROP VIEW v1;
@@ -742,13 +757,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values;
SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL order by id;
+WHERE select_id = 155 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_char_30, my_char_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL) order by id;
+WHERE select_id = 155 OR select_id IS NULL);
DROP VIEW v1;
@@ -756,13 +771,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL order by id;
+WHERE select_id = 154 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varbinary_1000`) AS `LOCATE('char', my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL) order by id;
+WHERE select_id = 154 OR select_id IS NULL);
DROP VIEW v1;
@@ -770,13 +785,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL order by id;
+WHERE select_id = 153 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_binary_30`) AS `LOCATE('char', my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL) order by id;
+WHERE select_id = 153 OR select_id IS NULL);
DROP VIEW v1;
@@ -784,13 +799,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL order by id;
+WHERE select_id = 152 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varchar_1000`) AS `LOCATE('char', my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL) order by id;
+WHERE select_id = 152 OR select_id IS NULL);
DROP VIEW v1;
@@ -798,46 +813,46 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values;
SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL order by id;
+WHERE select_id = 151 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `LOCATE('char', my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL) order by id;
+WHERE select_id = 151 OR select_id IS NULL);
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values;
-SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+CREATE VIEW v1 AS SELECT LOAD_FILE('../log/current_test'), id FROM t1_values;
+SELECT LOAD_FILE('../log/current_test'), id FROM t1_values
+WHERE select_id = 150 OR select_id IS NULL;
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: memory_func_view
1
-äÄ@
+CURRENT_TEST: memory_func_view
2
-äÄ@
+CURRENT_TEST: memory_func_view
3
-äÄ@
+CURRENT_TEST: memory_func_view
4
-äÄ@
+CURRENT_TEST: memory_func_view
5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../tmp/func_view.dat') AS `LOAD_FILE('../tmp/func_view.dat')`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../log/current_test') AS `LOAD_FILE('../log/current_test')`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL) order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+WHERE select_id = 150 OR select_id IS NULL);
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: memory_func_view
1
-äÄ@
+CURRENT_TEST: memory_func_view
2
-äÄ@
+CURRENT_TEST: memory_func_view
3
-äÄ@
+CURRENT_TEST: memory_func_view
4
-äÄ@
+CURRENT_TEST: memory_func_view
5
DROP VIEW v1;
@@ -846,13 +861,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL order by id;
+WHERE select_id = 149 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varbinary_1000`) AS `LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL) order by id;
+WHERE select_id = 149 OR select_id IS NULL);
DROP VIEW v1;
@@ -860,13 +875,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL order by id;
+WHERE select_id = 148 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_binary_30`) AS `LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL) order by id;
+WHERE select_id = 148 OR select_id IS NULL);
DROP VIEW v1;
@@ -874,13 +889,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL order by id;
+WHERE select_id = 147 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varchar_1000`) AS `LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL) order by id;
+WHERE select_id = 147 OR select_id IS NULL);
DROP VIEW v1;
@@ -888,19 +903,19 @@ CREATE VIEW v1 AS SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL order by id;
+WHERE select_id = 146 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_char_30`) AS `LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL) order by id;
+WHERE select_id = 146 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values;
SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL order by id;
+WHERE select_id = 145 OR select_id IS NULL;
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -915,7 +930,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(_latin1'AaBbCcDdEeFfGgHhIiJjÄäÜüÖö',`t1_values`.`my_decimal`) AS `LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL) order by id;
+WHERE select_id = 145 OR select_id IS NULL);
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -930,7 +945,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values;
SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL order by id;
+WHERE select_id = 144 OR select_id IS NULL;
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -942,7 +957,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varbinary_1000`,2) AS `LEFT(my_varbinary_1000, 2)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL) order by id;
+WHERE select_id = 144 OR select_id IS NULL);
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -954,7 +969,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values;
SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL order by id;
+WHERE select_id = 143 OR select_id IS NULL;
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -966,7 +981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_binary_30`,2) AS `LEFT(my_binary_30, 2)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL) order by id;
+WHERE select_id = 143 OR select_id IS NULL);
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -978,7 +993,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values;
SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL order by id;
+WHERE select_id = 142 OR select_id IS NULL;
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -990,7 +1005,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varchar_1000`,2) AS `LEFT(my_varchar_1000, 2)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL) order by id;
+WHERE select_id = 142 OR select_id IS NULL);
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -1002,7 +1017,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values;
SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL order by id;
+WHERE select_id = 141 OR select_id IS NULL;
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1014,7 +1029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_char_30`,2) AS `LEFT(my_char_30, 2)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL) order by id;
+WHERE select_id = 141 OR select_id IS NULL);
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1028,13 +1043,13 @@ CREATE VIEW v1 AS SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL order by id;
+WHERE select_id = 140 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LCASE(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL) order by id;
+WHERE select_id = 140 OR select_id IS NULL);
DROP VIEW v1;
@@ -1042,13 +1057,13 @@ CREATE VIEW v1 AS SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values;
SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL order by id;
+WHERE select_id = 139 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `INSTR(my_char_30, 'char')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL) order by id;
+WHERE select_id = 139 OR select_id IS NULL);
DROP VIEW v1;
@@ -1056,7 +1071,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL order by id;
+WHERE select_id = 138 OR select_id IS NULL;
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1068,7 +1083,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varbinary_1000`) AS `BIT_LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL) order by id;
+WHERE select_id = 138 OR select_id IS NULL);
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1082,7 +1097,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL order by id;
+WHERE select_id = 137 OR select_id IS NULL;
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1094,7 +1109,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_binary_30`) AS `BIT_LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL) order by id;
+WHERE select_id = 137 OR select_id IS NULL);
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1108,7 +1123,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL order by id;
+WHERE select_id = 136 OR select_id IS NULL;
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1120,7 +1135,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varchar_1000`) AS `BIT_LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL) order by id;
+WHERE select_id = 136 OR select_id IS NULL);
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1134,7 +1149,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL order by id;
+WHERE select_id = 135 OR select_id IS NULL;
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1146,7 +1161,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_char_30`) AS `BIT_LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL) order by id;
+WHERE select_id = 135 OR select_id IS NULL);
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1160,7 +1175,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values;
SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL order by id;
+WHERE select_id = 134 OR select_id IS NULL;
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1172,7 +1187,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_year`,_latin1'IS_NULL') AS `IFNULL(my_year,'IS_NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL) order by id;
+WHERE select_id = 134 OR select_id IS NULL);
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1186,7 +1201,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values;
SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL order by id;
+WHERE select_id = 133 OR select_id IS NULL;
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1198,7 +1213,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_time`,_latin1'IS_NULL') AS `IFNULL(my_time,'IS_NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL) order by id;
+WHERE select_id = 133 OR select_id IS NULL);
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1212,7 +1227,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values;
SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL order by id;
+WHERE select_id = 132 OR select_id IS NULL;
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1224,7 +1239,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_timestamp`,_latin1'IS_NULL') AS `IFNULL(my_timestamp,'IS_NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL) order by id;
+WHERE select_id = 132 OR select_id IS NULL);
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1238,7 +1253,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values;
SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL order by id;
+WHERE select_id = 131 OR select_id IS NULL;
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1250,7 +1265,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_date`,_latin1'IS_NULL') AS `IFNULL(my_date,'IS_NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL) order by id;
+WHERE select_id = 131 OR select_id IS NULL);
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1264,7 +1279,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values;
SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL order by id;
+WHERE select_id = 130 OR select_id IS NULL;
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1276,7 +1291,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_datetime`,_latin1'IS_NULL') AS `IFNULL(my_datetime,'IS_NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL) order by id;
+WHERE select_id = 130 OR select_id IS NULL);
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1290,7 +1305,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values;
SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL order by id;
+WHERE select_id = 129 OR select_id IS NULL;
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1302,7 +1317,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_double`,_latin1'IS_NULL') AS `IFNULL(my_double,'IS_NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL) order by id;
+WHERE select_id = 129 OR select_id IS NULL);
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1316,7 +1331,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values;
SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL order by id;
+WHERE select_id = 128 OR select_id IS NULL;
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1328,7 +1343,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_decimal`,_latin1'IS_NULL') AS `IFNULL(my_decimal,'IS_NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL) order by id;
+WHERE select_id = 128 OR select_id IS NULL);
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1342,7 +1357,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values;
SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL order by id;
+WHERE select_id = 127 OR select_id IS NULL;
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1354,7 +1369,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_bigint`,_latin1'IS_NULL') AS `IFNULL(my_bigint,'IS_NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL) order by id;
+WHERE select_id = 127 OR select_id IS NULL);
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1368,7 +1383,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values;
SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL order by id;
+WHERE select_id = 126 OR select_id IS NULL;
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1380,7 +1395,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varbinary_1000`,_latin1'IS_NULL') AS `IFNULL(my_varbinary_1000,'IS_NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL) order by id;
+WHERE select_id = 126 OR select_id IS NULL);
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1394,7 +1409,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values;
SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL order by id;
+WHERE select_id = 125 OR select_id IS NULL;
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1406,7 +1421,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_binary_30`,_latin1'IS_NULL') AS `IFNULL(my_binary_30,'IS_NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL) order by id;
+WHERE select_id = 125 OR select_id IS NULL);
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1420,7 +1435,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values;
SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL order by id;
+WHERE select_id = 124 OR select_id IS NULL;
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1432,7 +1447,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varchar_1000`,_latin1'IS_NULL') AS `IFNULL(my_varchar_1000,'IS_NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL) order by id;
+WHERE select_id = 124 OR select_id IS NULL);
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1446,7 +1461,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values;
SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL order by id;
+WHERE select_id = 123 OR select_id IS NULL;
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1458,7 +1473,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_char_30`,_latin1'IS_NULL') AS `IFNULL(my_char_30,'IS_NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL) order by id;
+WHERE select_id = 123 OR select_id IS NULL);
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1472,7 +1487,7 @@ CREATE VIEW v1 AS SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values;
SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL order by id;
+WHERE select_id = 122 OR select_id IS NULL;
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1486,7 +1501,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL) order by id;
+WHERE select_id = 122 OR select_id IS NULL);
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1501,7 +1516,7 @@ CREATE VIEW v1 AS SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values;
SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL order by id;
+WHERE select_id = 121 OR select_id IS NULL;
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1515,7 +1530,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL) order by id;
+WHERE select_id = 121 OR select_id IS NULL);
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1530,7 +1545,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL order by id;
+WHERE select_id = 120 OR select_id IS NULL;
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1544,7 +1559,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL) order by id;
+WHERE select_id = 120 OR select_id IS NULL);
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1559,7 +1574,7 @@ CREATE VIEW v1 AS SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values;
SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL order by id;
+WHERE select_id = 119 OR select_id IS NULL;
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1573,7 +1588,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL) order by id;
+WHERE select_id = 119 OR select_id IS NULL);
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1588,7 +1603,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values;
SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL order by id;
+WHERE select_id = 118 OR select_id IS NULL;
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1602,7 +1617,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL) order by id;
+WHERE select_id = 118 OR select_id IS NULL);
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1617,7 +1632,7 @@ CREATE VIEW v1 AS SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values;
SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL order by id;
+WHERE select_id = 117 OR select_id IS NULL;
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1631,7 +1646,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL) order by id;
+WHERE select_id = 117 OR select_id IS NULL);
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1646,7 +1661,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values;
SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL order by id;
+WHERE select_id = 116 OR select_id IS NULL;
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1660,7 +1675,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL) order by id;
+WHERE select_id = 116 OR select_id IS NULL);
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1675,7 +1690,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values;
SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL order by id;
+WHERE select_id = 115 OR select_id IS NULL;
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1689,7 +1704,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL) order by id;
+WHERE select_id = 115 OR select_id IS NULL);
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1704,7 +1719,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL order by id;
+WHERE select_id = 114 OR select_id IS NULL;
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1718,7 +1733,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL) order by id;
+WHERE select_id = 114 OR select_id IS NULL);
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1733,7 +1748,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL order by id;
+WHERE select_id = 113 OR select_id IS NULL;
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1747,7 +1762,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL) order by id;
+WHERE select_id = 113 OR select_id IS NULL);
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1762,7 +1777,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL order by id;
+WHERE select_id = 112 OR select_id IS NULL;
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1776,7 +1791,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL) order by id;
+WHERE select_id = 112 OR select_id IS NULL);
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1791,7 +1806,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values;
SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL order by id;
+WHERE select_id = 111 OR select_id IS NULL;
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1805,7 +1820,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL) order by id;
+WHERE select_id = 111 OR select_id IS NULL);
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1820,7 +1835,7 @@ CREATE VIEW v1 AS SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values;
SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL order by id;
+WHERE select_id = 110 OR select_id IS NULL;
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1832,7 +1847,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_year`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_year, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL) order by id;
+WHERE select_id = 110 OR select_id IS NULL);
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1846,7 +1861,7 @@ CREATE VIEW v1 AS SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values;
SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL order by id;
+WHERE select_id = 109 OR select_id IS NULL;
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1858,7 +1873,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_time`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_time, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL) order by id;
+WHERE select_id = 109 OR select_id IS NULL);
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1872,7 +1887,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL order by id;
+WHERE select_id = 108 OR select_id IS NULL;
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1884,7 +1899,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_timestamp`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL) order by id;
+WHERE select_id = 108 OR select_id IS NULL);
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1898,7 +1913,7 @@ CREATE VIEW v1 AS SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values;
SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL order by id;
+WHERE select_id = 107 OR select_id IS NULL;
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1910,7 +1925,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_date`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_date, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL) order by id;
+WHERE select_id = 107 OR select_id IS NULL);
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1924,7 +1939,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values;
SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL order by id;
+WHERE select_id = 106 OR select_id IS NULL;
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1936,7 +1951,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_datetime`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_datetime, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL) order by id;
+WHERE select_id = 106 OR select_id IS NULL);
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1950,7 +1965,7 @@ CREATE VIEW v1 AS SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values;
SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL order by id;
+WHERE select_id = 105 OR select_id IS NULL;
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1962,7 +1977,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_double`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_double, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL) order by id;
+WHERE select_id = 105 OR select_id IS NULL);
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1976,7 +1991,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values;
SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL order by id;
+WHERE select_id = 104 OR select_id IS NULL;
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1988,7 +2003,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_decimal`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_decimal, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL) order by id;
+WHERE select_id = 104 OR select_id IS NULL);
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2002,7 +2017,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values;
SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL order by id;
+WHERE select_id = 103 OR select_id IS NULL;
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2014,7 +2029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_bigint`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_bigint, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL) order by id;
+WHERE select_id = 103 OR select_id IS NULL);
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2028,7 +2043,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL order by id;
+WHERE select_id = 102 OR select_id IS NULL;
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2040,7 +2055,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varbinary_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL) order by id;
+WHERE select_id = 102 OR select_id IS NULL);
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2054,7 +2069,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL order by id;
+WHERE select_id = 101 OR select_id IS NULL;
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2071,7 +2086,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_binary_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL) order by id;
+WHERE select_id = 101 OR select_id IS NULL);
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2090,7 +2105,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL order by id;
+WHERE select_id = 100 OR select_id IS NULL;
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2102,7 +2117,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varchar_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL) order by id;
+WHERE select_id = 100 OR select_id IS NULL);
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2116,7 +2131,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values;
SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL order by id;
+WHERE select_id = 99 OR select_id IS NULL;
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2131,7 +2146,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_char_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_char_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL) order by id;
+WHERE select_id = 99 OR select_id IS NULL);
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2148,7 +2163,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL order by id;
+WHERE select_id = 98 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2160,7 +2175,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using koi8r) AS `CONVERT(my_varbinary_1000 USING koi8r)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL) order by id;
+WHERE select_id = 98 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2174,7 +2189,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL order by id;
+WHERE select_id = 97 OR select_id IS NULL;
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2186,7 +2201,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using koi8r) AS `CONVERT(my_binary_30 USING koi8r)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL) order by id;
+WHERE select_id = 97 OR select_id IS NULL);
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2200,7 +2215,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL order by id;
+WHERE select_id = 96 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2212,7 +2227,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using koi8r) AS `CONVERT(my_varchar_1000 USING koi8r)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL) order by id;
+WHERE select_id = 96 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2226,7 +2241,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL order by id;
+WHERE select_id = 95 OR select_id IS NULL;
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2238,7 +2253,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using koi8r) AS `CONVERT(my_char_30 USING koi8r)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL) order by id;
+WHERE select_id = 95 OR select_id IS NULL);
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2252,7 +2267,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL order by id;
+WHERE select_id = 94 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2264,7 +2279,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using utf8) AS `CONVERT(my_varbinary_1000 USING utf8)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL) order by id;
+WHERE select_id = 94 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2278,7 +2293,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL order by id;
+WHERE select_id = 93 OR select_id IS NULL;
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2290,7 +2305,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using utf8) AS `CONVERT(my_binary_30 USING utf8)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL) order by id;
+WHERE select_id = 93 OR select_id IS NULL);
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2304,7 +2319,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL order by id;
+WHERE select_id = 92 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2316,7 +2331,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using utf8) AS `CONVERT(my_varchar_1000 USING utf8)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL) order by id;
+WHERE select_id = 92 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2330,7 +2345,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL order by id;
+WHERE select_id = 91 OR select_id IS NULL;
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2342,7 +2357,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using utf8) AS `CONVERT(my_char_30 USING utf8)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL) order by id;
+WHERE select_id = 91 OR select_id IS NULL);
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2356,7 +2371,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL order by id;
+WHERE select_id = 90 OR select_id IS NULL;
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2368,7 +2383,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as unsigned) AS `CAST(my_year AS UNSIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL) order by id;
+WHERE select_id = 90 OR select_id IS NULL);
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2382,37 +2397,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL order by id;
+WHERE select_id = 89 OR select_id IS NULL;
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as unsigned) AS `CAST(my_time AS UNSIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL) order by id;
+WHERE select_id = 89 OR select_id IS NULL);
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2420,37 +2423,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL order by id;
+WHERE select_id = 88 OR select_id IS NULL;
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as unsigned) AS `CAST(my_timestamp AS UNSIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL) order by id;
+WHERE select_id = 88 OR select_id IS NULL);
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2458,35 +2449,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL order by id;
+WHERE select_id = 87 OR select_id IS NULL;
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as unsigned) AS `CAST(my_date AS UNSIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL) order by id;
+WHERE select_id = 87 OR select_id IS NULL);
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2494,35 +2475,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL order by id;
+WHERE select_id = 86 OR select_id IS NULL;
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as unsigned) AS `CAST(my_datetime AS UNSIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL) order by id;
+WHERE select_id = 86 OR select_id IS NULL);
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2530,7 +2501,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL order by id;
+WHERE select_id = 85 OR select_id IS NULL;
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2546,7 +2517,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as unsigned) AS `CAST(my_decimal AS UNSIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL) order by id;
+WHERE select_id = 85 OR select_id IS NULL);
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2564,7 +2535,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL order by id;
+WHERE select_id = 84 OR select_id IS NULL;
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2576,7 +2547,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as unsigned) AS `CAST(my_bigint AS UNSIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL) order by id;
+WHERE select_id = 84 OR select_id IS NULL);
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2590,7 +2561,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL order by id;
+WHERE select_id = 83 OR select_id IS NULL;
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2607,7 +2578,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as unsigned) AS `CAST(my_varbinary_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL) order by id;
+WHERE select_id = 83 OR select_id IS NULL);
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2626,7 +2597,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL order by id;
+WHERE select_id = 82 OR select_id IS NULL;
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2644,7 +2615,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as unsigned) AS `CAST(my_binary_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL) order by id;
+WHERE select_id = 82 OR select_id IS NULL);
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2664,7 +2635,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL order by id;
+WHERE select_id = 81 OR select_id IS NULL;
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2681,7 +2652,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as unsigned) AS `CAST(my_varchar_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL) order by id;
+WHERE select_id = 81 OR select_id IS NULL);
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2700,7 +2671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL order by id;
+WHERE select_id = 80 OR select_id IS NULL;
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2717,7 +2688,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as unsigned) AS `CAST(my_char_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL) order by id;
+WHERE select_id = 80 OR select_id IS NULL);
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2736,7 +2707,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL order by id;
+WHERE select_id = 79 OR select_id IS NULL;
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2748,7 +2719,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as signed) AS `CAST(my_year AS SIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL) order by id;
+WHERE select_id = 79 OR select_id IS NULL);
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2762,35 +2733,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL order by id;
+WHERE select_id = 78 OR select_id IS NULL;
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as signed) AS `CAST(my_time AS SIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL) order by id;
+WHERE select_id = 78 OR select_id IS NULL);
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2798,37 +2759,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL order by id;
+WHERE select_id = 77 OR select_id IS NULL;
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as signed) AS `CAST(my_timestamp AS SIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL) order by id;
+WHERE select_id = 77 OR select_id IS NULL);
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2836,35 +2785,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL order by id;
+WHERE select_id = 76 OR select_id IS NULL;
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as signed) AS `CAST(my_date AS SIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL) order by id;
+WHERE select_id = 76 OR select_id IS NULL);
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2872,67 +2811,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL order by id;
+WHERE select_id = 75 OR select_id IS NULL;
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as signed) AS `CAST(my_datetime AS SIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL) order by id;
+WHERE select_id = 75 OR select_id IS NULL);
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as signed) AS `CAST(my_double AS SIGNED INTEGER)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL) order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2940,11 +2837,11 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL order by id;
+WHERE select_id = 74 OR select_id IS NULL;
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2955,11 +2852,11 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as signed) AS `CAST(my_decimal AS SIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL) order by id;
+WHERE select_id = 74 OR select_id IS NULL);
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2972,7 +2869,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL order by id;
+WHERE select_id = 73 OR select_id IS NULL;
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2984,7 +2881,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as signed) AS `CAST(my_bigint AS SIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL) order by id;
+WHERE select_id = 73 OR select_id IS NULL);
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2998,7 +2895,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL order by id;
+WHERE select_id = 72 OR select_id IS NULL;
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3014,7 +2911,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as signed) AS `CAST(my_varbinary_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL) order by id;
+WHERE select_id = 72 OR select_id IS NULL);
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3032,7 +2929,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL order by id;
+WHERE select_id = 71 OR select_id IS NULL;
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3049,7 +2946,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as signed) AS `CAST(my_binary_30 AS SIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL) order by id;
+WHERE select_id = 71 OR select_id IS NULL);
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3068,7 +2965,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL order by id;
+WHERE select_id = 70 OR select_id IS NULL;
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3084,7 +2981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as signed) AS `CAST(my_varchar_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL) order by id;
+WHERE select_id = 70 OR select_id IS NULL);
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3102,7 +2999,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL order by id;
+WHERE select_id = 69 OR select_id IS NULL;
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3118,7 +3015,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as signed) AS `CAST(my_char_30 AS SIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL) order by id;
+WHERE select_id = 69 OR select_id IS NULL);
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3132,287 +3029,217 @@ Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$--'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values;
-SELECT CAST(my_year AS DECIMAL),
+SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL;
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal) AS `CAST(my_year AS DECIMAL)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal(37,2)) AS `CAST(my_year AS DECIMAL(37,2))`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL) order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL);
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values;
-SELECT CAST(my_time AS DECIMAL),
+SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL;
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal) AS `CAST(my_time AS DECIMAL)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal(37,2)) AS `CAST(my_time AS DECIMAL(37,2))`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL) order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL);
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values;
-SELECT CAST(my_timestamp AS DECIMAL),
+SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL;
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal) AS `CAST(my_timestamp AS DECIMAL)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal(37,2)) AS `CAST(my_timestamp AS DECIMAL(37,2))`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL) order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL);
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values;
-SELECT CAST(my_date AS DECIMAL),
+SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL;
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal) AS `CAST(my_date AS DECIMAL)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal(37,2)) AS `CAST(my_date AS DECIMAL(37,2))`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL) order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL);
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values;
-SELECT CAST(my_datetime AS DECIMAL),
+SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
-NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal) AS `CAST(my_datetime AS DECIMAL)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL) order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
+WHERE select_id = 64 OR select_id IS NULL;
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL order by id;
-CAST(my_double AS DECIMAL) my_double id
-NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as decimal) AS `CAST(my_double AS DECIMAL)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal(37,2)) AS `CAST(my_datetime AS DECIMAL(37,2))`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL) order by id;
-CAST(my_double AS DECIMAL) my_double id
+WHERE select_id = 64 OR select_id IS NULL);
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values;
-SELECT CAST(my_decimal AS DECIMAL),
+SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL;
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal) AS `CAST(my_decimal AS DECIMAL)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal(37,2)) AS `CAST(my_decimal AS DECIMAL(37,2))`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL) order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL);
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values;
-SELECT CAST(my_bigint AS DECIMAL),
+SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL;
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal) AS `CAST(my_bigint AS DECIMAL)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal(37,2)) AS `CAST(my_bigint AS DECIMAL(37,2))`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL) order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL);
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values;
-SELECT CAST(my_varbinary_1000 AS DECIMAL),
+SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+WHERE select_id = 61 OR select_id IS NULL;
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal) AS `CAST(my_varbinary_1000 AS DECIMAL)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal(37,2)) AS `CAST(my_varbinary_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL) order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
+WHERE select_id = 61 OR select_id IS NULL);
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3420,18 +3247,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values;
-SELECT CAST(my_binary_30 AS DECIMAL),
+SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
-NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+WHERE select_id = 60 OR select_id IS NULL;
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
+NULL NULL 1
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3443,17 +3270,17 @@ Warning 1292 Truncated incorrect DECIMAL value: '-1'
Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal) AS `CAST(my_binary_30 AS DECIMAL)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal(37,2)) AS `CAST(my_binary_30 AS DECIMAL(37,2))`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL) order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
+WHERE select_id = 60 OR select_id IS NULL);
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3466,35 +3293,35 @@ Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values;
-SELECT CAST(my_varchar_1000 AS DECIMAL),
+SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+WHERE select_id = 59 OR select_id IS NULL;
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal) AS `CAST(my_varchar_1000 AS DECIMAL)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal(37,2)) AS `CAST(my_varchar_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL) order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
+WHERE select_id = 59 OR select_id IS NULL);
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3502,18 +3329,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values;
-SELECT CAST(my_char_30 AS DECIMAL),
+SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
-NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+WHERE select_id = 58 OR select_id IS NULL;
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
+NULL NULL 1
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3523,17 +3350,17 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- '
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal) AS `CAST(my_char_30 AS DECIMAL)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal(37,2)) AS `CAST(my_char_30 AS DECIMAL(37,2))`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL) order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
+WHERE select_id = 58 OR select_id IS NULL);
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3548,7 +3375,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL order by id;
+WHERE select_id = 57 OR select_id IS NULL;
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3560,7 +3387,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as time) AS `CAST(my_year AS TIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL) order by id;
+WHERE select_id = 57 OR select_id IS NULL);
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3574,7 +3401,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL order by id;
+WHERE select_id = 56 OR select_id IS NULL;
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3586,7 +3413,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as time) AS `CAST(my_time AS TIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL) order by id;
+WHERE select_id = 56 OR select_id IS NULL);
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3600,7 +3427,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL order by id;
+WHERE select_id = 55 OR select_id IS NULL;
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3612,7 +3439,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as time) AS `CAST(my_timestamp AS TIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL) order by id;
+WHERE select_id = 55 OR select_id IS NULL);
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3626,7 +3453,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL order by id;
+WHERE select_id = 54 OR select_id IS NULL;
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3638,7 +3465,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as time) AS `CAST(my_date AS TIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL) order by id;
+WHERE select_id = 54 OR select_id IS NULL);
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3652,7 +3479,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL order by id;
+WHERE select_id = 53 OR select_id IS NULL;
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3664,7 +3491,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as time) AS `CAST(my_datetime AS TIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL) order by id;
+WHERE select_id = 53 OR select_id IS NULL);
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3674,45 +3501,11 @@ NULL NULL 1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as time) AS `CAST(my_double AS TIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL) order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-DROP VIEW v1;
-
-
CREATE VIEW v1 AS SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL order by id;
+WHERE select_id = 52 OR select_id IS NULL;
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3728,7 +3521,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as time) AS `CAST(my_bigint AS TIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL) order by id;
+WHERE select_id = 52 OR select_id IS NULL);
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3746,7 +3539,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL order by id;
+WHERE select_id = 51 OR select_id IS NULL;
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3763,7 +3556,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as time) AS `CAST(my_varbinary_1000 AS TIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL) order by id;
+WHERE select_id = 51 OR select_id IS NULL);
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3782,7 +3575,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL order by id;
+WHERE select_id = 50 OR select_id IS NULL;
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3801,7 +3594,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as time) AS `CAST(my_binary_30 AS TIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL) order by id;
+WHERE select_id = 50 OR select_id IS NULL);
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3822,7 +3615,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL order by id;
+WHERE select_id = 49 OR select_id IS NULL;
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3839,7 +3632,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as time) AS `CAST(my_varchar_1000 AS TIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL) order by id;
+WHERE select_id = 49 OR select_id IS NULL);
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3858,7 +3651,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL order by id;
+WHERE select_id = 48 OR select_id IS NULL;
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3875,7 +3668,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as time) AS `CAST(my_char_30 AS TIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL) order by id;
+WHERE select_id = 48 OR select_id IS NULL);
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3894,7 +3687,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL order by id;
+WHERE select_id = 47 OR select_id IS NULL;
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3902,16 +3695,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as datetime) AS `CAST(my_year AS DATETIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL) order by id;
+WHERE select_id = 47 OR select_id IS NULL);
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3919,10 +3712,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -3930,7 +3723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL order by id;
+WHERE select_id = 46 OR select_id IS NULL;
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3938,14 +3731,14 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as datetime) AS `CAST(my_time AS DATETIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL) order by id;
+WHERE select_id = 46 OR select_id IS NULL);
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3953,8 +3746,8 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
DROP VIEW v1;
@@ -3962,7 +3755,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL order by id;
+WHERE select_id = 45 OR select_id IS NULL;
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3974,7 +3767,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as datetime) AS `CAST(my_timestamp AS DATETIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL) order by id;
+WHERE select_id = 45 OR select_id IS NULL);
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3988,7 +3781,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL order by id;
+WHERE select_id = 44 OR select_id IS NULL;
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4000,7 +3793,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as datetime) AS `CAST(my_date AS DATETIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL) order by id;
+WHERE select_id = 44 OR select_id IS NULL);
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4014,7 +3807,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL order by id;
+WHERE select_id = 43 OR select_id IS NULL;
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4026,7 +3819,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as datetime) AS `CAST(my_datetime AS DATETIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL) order by id;
+WHERE select_id = 43 OR select_id IS NULL);
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4040,7 +3833,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL order by id;
+WHERE select_id = 42 OR select_id IS NULL;
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4049,17 +3842,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as datetime) AS `CAST(my_double AS DATETIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL) order by id;
+WHERE select_id = 42 OR select_id IS NULL);
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4068,11 +3861,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4080,7 +3873,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL order by id;
+WHERE select_id = 41 OR select_id IS NULL;
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4089,17 +3882,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as datetime) AS `CAST(my_bigint AS DATETIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL) order by id;
+WHERE select_id = 41 OR select_id IS NULL);
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4108,11 +3901,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4120,7 +3913,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL order by id;
+WHERE select_id = 40 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4129,16 +3922,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as datetime) AS `CAST(my_varbinary_1000 AS DATETIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL) order by id;
+WHERE select_id = 40 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4147,10 +3940,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4158,7 +3951,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL order by id;
+WHERE select_id = 39 OR select_id IS NULL;
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4167,17 +3960,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as datetime) AS `CAST(my_binary_30 AS DATETIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL) order by id;
+WHERE select_id = 39 OR select_id IS NULL);
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4186,10 +3979,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
DROP VIEW v1;
@@ -4198,7 +3991,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL order by id;
+WHERE select_id = 38 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4207,16 +4000,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as datetime) AS `CAST(my_varchar_1000 AS DATETIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL) order by id;
+WHERE select_id = 38 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4225,10 +4018,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4236,7 +4029,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL order by id;
+WHERE select_id = 37 OR select_id IS NULL;
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4245,16 +4038,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as datetime) AS `CAST(my_char_30 AS DATETIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL) order by id;
+WHERE select_id = 37 OR select_id IS NULL);
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4263,10 +4056,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4274,7 +4067,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL order by id;
+WHERE select_id = 36 OR select_id IS NULL;
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4282,16 +4075,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as date) AS `CAST(my_year AS DATE)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL) order by id;
+WHERE select_id = 36 OR select_id IS NULL);
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4299,10 +4092,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -4310,7 +4103,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL order by id;
+WHERE select_id = 35 OR select_id IS NULL;
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4322,7 +4115,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as date) AS `CAST(my_time AS DATE)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL) order by id;
+WHERE select_id = 35 OR select_id IS NULL);
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4336,7 +4129,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL order by id;
+WHERE select_id = 34 OR select_id IS NULL;
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4348,7 +4141,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as date) AS `CAST(my_timestamp AS DATE)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL) order by id;
+WHERE select_id = 34 OR select_id IS NULL);
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4362,7 +4155,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL order by id;
+WHERE select_id = 33 OR select_id IS NULL;
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4374,7 +4167,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as date) AS `CAST(my_date AS DATE)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL) order by id;
+WHERE select_id = 33 OR select_id IS NULL);
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4388,7 +4181,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL order by id;
+WHERE select_id = 32 OR select_id IS NULL;
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4400,7 +4193,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as date) AS `CAST(my_datetime AS DATE)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL) order by id;
+WHERE select_id = 32 OR select_id IS NULL);
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4414,7 +4207,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL order by id;
+WHERE select_id = 31 OR select_id IS NULL;
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4423,16 +4216,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as date) AS `CAST(my_double AS DATE)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL) order by id;
+WHERE select_id = 31 OR select_id IS NULL);
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4441,10 +4234,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4452,7 +4245,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL order by id;
+WHERE select_id = 30 OR select_id IS NULL;
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4461,16 +4254,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as date) AS `CAST(my_bigint AS DATE)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL) order by id;
+WHERE select_id = 30 OR select_id IS NULL);
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4479,10 +4272,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4490,7 +4283,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL order by id;
+WHERE select_id = 29 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4499,16 +4292,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as date) AS `CAST(my_varbinary_1000 AS DATE)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL) order by id;
+WHERE select_id = 29 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4517,10 +4310,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4528,7 +4321,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL order by id;
+WHERE select_id = 28 OR select_id IS NULL;
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4537,17 +4330,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as date) AS `CAST(my_binary_30 AS DATE)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL) order by id;
+WHERE select_id = 28 OR select_id IS NULL);
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4556,10 +4349,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
DROP VIEW v1;
@@ -4568,7 +4361,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL order by id;
+WHERE select_id = 27 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4577,16 +4370,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as date) AS `CAST(my_varchar_1000 AS DATE)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL) order by id;
+WHERE select_id = 27 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4595,10 +4388,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4606,7 +4399,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL order by id;
+WHERE select_id = 26 OR select_id IS NULL;
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4615,16 +4408,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as date) AS `CAST(my_char_30 AS DATE)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL) order by id;
+WHERE select_id = 26 OR select_id IS NULL);
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4633,10 +4426,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4644,7 +4437,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values;
SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL order by id;
+WHERE select_id = 25 OR select_id IS NULL;
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4656,7 +4449,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset latin1) AS `CAST(my_year AS CHAR)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL) order by id;
+WHERE select_id = 25 OR select_id IS NULL);
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4670,7 +4463,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values;
SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL order by id;
+WHERE select_id = 24 OR select_id IS NULL;
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4682,7 +4475,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset latin1) AS `CAST(my_time AS CHAR)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL) order by id;
+WHERE select_id = 24 OR select_id IS NULL);
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4696,7 +4489,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL order by id;
+WHERE select_id = 23 OR select_id IS NULL;
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4708,7 +4501,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset latin1) AS `CAST(my_timestamp AS CHAR)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL) order by id;
+WHERE select_id = 23 OR select_id IS NULL);
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4722,7 +4515,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values;
SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL order by id;
+WHERE select_id = 22 OR select_id IS NULL;
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4734,7 +4527,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset latin1) AS `CAST(my_date AS CHAR)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL) order by id;
+WHERE select_id = 22 OR select_id IS NULL);
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4748,7 +4541,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL order by id;
+WHERE select_id = 21 OR select_id IS NULL;
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4760,7 +4553,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset latin1) AS `CAST(my_datetime AS CHAR)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL) order by id;
+WHERE select_id = 21 OR select_id IS NULL);
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4774,7 +4567,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values;
SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL order by id;
+WHERE select_id = 20 OR select_id IS NULL;
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4786,7 +4579,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset latin1) AS `CAST(my_double AS CHAR)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL) order by id;
+WHERE select_id = 20 OR select_id IS NULL);
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4800,7 +4593,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL order by id;
+WHERE select_id = 19 OR select_id IS NULL;
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4812,7 +4605,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset latin1) AS `CAST(my_decimal AS CHAR)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL) order by id;
+WHERE select_id = 19 OR select_id IS NULL);
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4826,7 +4619,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL order by id;
+WHERE select_id = 18 OR select_id IS NULL;
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4838,7 +4631,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset latin1) AS `CAST(my_bigint AS CHAR)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL) order by id;
+WHERE select_id = 18 OR select_id IS NULL);
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4852,7 +4645,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL order by id;
+WHERE select_id = 17 OR select_id IS NULL;
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4864,7 +4657,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset latin1) AS `CAST(my_varbinary_1000 AS CHAR)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL) order by id;
+WHERE select_id = 17 OR select_id IS NULL);
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4878,7 +4671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL order by id;
+WHERE select_id = 16 OR select_id IS NULL;
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4890,7 +4683,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset latin1) AS `CAST(my_binary_30 AS CHAR)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL) order by id;
+WHERE select_id = 16 OR select_id IS NULL);
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4904,7 +4697,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL order by id;
+WHERE select_id = 15 OR select_id IS NULL;
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4916,7 +4709,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset latin1) AS `CAST(my_varchar_1000 AS CHAR)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL) order by id;
+WHERE select_id = 15 OR select_id IS NULL);
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4930,7 +4723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL order by id;
+WHERE select_id = 14 OR select_id IS NULL;
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4942,7 +4735,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset latin1) AS `CAST(my_char_30 AS CHAR)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL) order by id;
+WHERE select_id = 14 OR select_id IS NULL);
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4956,7 +4749,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values;
SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL order by id;
+WHERE select_id = 13 OR select_id IS NULL;
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4968,7 +4761,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset binary) AS `CAST(my_year AS BINARY)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL) order by id;
+WHERE select_id = 13 OR select_id IS NULL);
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4982,7 +4775,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values;
SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL order by id;
+WHERE select_id = 12 OR select_id IS NULL;
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4994,7 +4787,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset binary) AS `CAST(my_time AS BINARY)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL) order by id;
+WHERE select_id = 12 OR select_id IS NULL);
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -5008,7 +4801,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL order by id;
+WHERE select_id = 11 OR select_id IS NULL;
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5020,7 +4813,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset binary) AS `CAST(my_timestamp AS BINARY)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL) order by id;
+WHERE select_id = 11 OR select_id IS NULL);
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5034,7 +4827,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values;
SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL order by id;
+WHERE select_id = 10 OR select_id IS NULL;
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5046,7 +4839,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset binary) AS `CAST(my_date AS BINARY)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL) order by id;
+WHERE select_id = 10 OR select_id IS NULL);
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5060,7 +4853,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL order by id;
+WHERE select_id = 9 OR select_id IS NULL;
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5072,7 +4865,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset binary) AS `CAST(my_datetime AS BINARY)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL) order by id;
+WHERE select_id = 9 OR select_id IS NULL);
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5086,7 +4879,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values;
SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL order by id;
+WHERE select_id = 8 OR select_id IS NULL;
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5098,7 +4891,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset binary) AS `CAST(my_double AS BINARY)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL) order by id;
+WHERE select_id = 8 OR select_id IS NULL);
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5112,7 +4905,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL order by id;
+WHERE select_id = 7 OR select_id IS NULL;
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5124,7 +4917,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset binary) AS `CAST(my_decimal AS BINARY)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL) order by id;
+WHERE select_id = 7 OR select_id IS NULL);
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5138,7 +4931,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL order by id;
+WHERE select_id = 6 OR select_id IS NULL;
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5150,7 +4943,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset binary) AS `CAST(my_bigint AS BINARY)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL) order by id;
+WHERE select_id = 6 OR select_id IS NULL);
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5164,7 +4957,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL order by id;
+WHERE select_id = 5 OR select_id IS NULL;
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5176,7 +4969,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset binary) AS `CAST(my_varbinary_1000 AS BINARY)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL) order by id;
+WHERE select_id = 5 OR select_id IS NULL);
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5190,7 +4983,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL order by id;
+WHERE select_id = 4 OR select_id IS NULL;
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5202,7 +4995,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset binary) AS `CAST(my_binary_30 AS BINARY)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL) order by id;
+WHERE select_id = 4 OR select_id IS NULL);
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5216,7 +5009,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL order by id;
+WHERE select_id = 3 OR select_id IS NULL;
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5228,7 +5021,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset binary) AS `CAST(my_varchar_1000 AS BINARY)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL) order by id;
+WHERE select_id = 3 OR select_id IS NULL);
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5242,7 +5035,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL order by id;
+WHERE select_id = 2 OR select_id IS NULL;
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5254,7 +5047,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset binary) AS `CAST(my_char_30 AS BINARY)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL) order by id;
+WHERE select_id = 2 OR select_id IS NULL);
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5266,7 +5059,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT sqrt(my_bigint), my_bigint, id FROM t1_values;
SELECT sqrt(my_bigint), my_bigint, id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL order by id;
+WHERE select_id = 1 OR select_id IS NULL;
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -5280,7 +5073,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sqrt(`t1_values`.`my_bigint`) AS `sqrt(my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL) order by id;
+WHERE select_id = 1 OR select_id IS NULL);
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_02.result b/mysql-test/suite/funcs_1/r/memory_storedproc_02.result
index 903f2b3d01f..903f2b3d01f 100644..100755
--- a/mysql-test/suite/funcs_1/r/memory_storedproc_02.result
+++ b/mysql-test/suite/funcs_1/r/memory_storedproc_02.result
diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_03.result b/mysql-test/suite/funcs_1/r/memory_storedproc_03.result
index 6ee2d712e73..6ee2d712e73 100644..100755
--- a/mysql-test/suite/funcs_1/r/memory_storedproc_03.result
+++ b/mysql-test/suite/funcs_1/r/memory_storedproc_03.result
diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_07.result b/mysql-test/suite/funcs_1/r/memory_storedproc_07.result
index 34e5ff76f29..34e5ff76f29 100644..100755
--- a/mysql-test/suite/funcs_1/r/memory_storedproc_07.result
+++ b/mysql-test/suite/funcs_1/r/memory_storedproc_07.result
diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_08.result b/mysql-test/suite/funcs_1/r/memory_storedproc_08.result
index 712d9ae933f..712d9ae933f 100644..100755
--- a/mysql-test/suite/funcs_1/r/memory_storedproc_08.result
+++ b/mysql-test/suite/funcs_1/r/memory_storedproc_08.result
diff --git a/mysql-test/suite/funcs_1/r/memory_storedproc_10.result b/mysql-test/suite/funcs_1/r/memory_storedproc_10.result
index e924cf0731a..e924cf0731a 100644..100755
--- a/mysql-test/suite/funcs_1/r/memory_storedproc_10.result
+++ b/mysql-test/suite/funcs_1/r/memory_storedproc_10.result
diff --git a/mysql-test/suite/funcs_1/r/memory_trig_0102.result b/mysql-test/suite/funcs_1/r/memory_trig_0102.result
index 1319fc3e361..7ce24bf60d5 100644
--- a/mysql-test/suite/funcs_1/r/memory_trig_0102.result
+++ b/mysql-test/suite/funcs_1/r/memory_trig_0102.result
@@ -238,7 +238,7 @@ create table t1 (f1 integer) engine = memory;
use test;
CREATE TRIGGER trig_db.trg6_2 AFTER INSERT on tb3
for each row set @ret_trg6_2 = 5;
-ERROR HY000: Trigger in wrong schema
+ERROR 42S02: Table 'trig_db.tb3' doesn't exist
use trig_db;
CREATE TRIGGER trg6_3 AFTER INSERT on test.tb3
for each row set @ret_trg6_3 = 18;
diff --git a/mysql-test/suite/funcs_1/r/memory_trig_08.result b/mysql-test/suite/funcs_1/r/memory_trig_08.result
index ddc990d1919..c445f03a2c0 100644
--- a/mysql-test/suite/funcs_1/r/memory_trig_08.result
+++ b/mysql-test/suite/funcs_1/r/memory_trig_08.result
@@ -488,9 +488,8 @@ BEGIN
WHILE @counter1 < new.f136
SET @counter1 = @counter1 + 1;
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 'WHILE @counter1 < new.f136
-SET @counter1 = @counter1 + 1;
-END' at line 3
+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 'SET @counter1 = @counter1 + 1;
+END' at line 4
delete from tb3 where f122='Test 3.5.8.5-while';
drop trigger trg7;
diff --git a/mysql-test/suite/funcs_1/r/memory_views.result b/mysql-test/suite/funcs_1/r/memory_views.result
index 9267cc5a98b..38f708cd4a2 100644
--- a/mysql-test/suite/funcs_1/r/memory_views.result
+++ b/mysql-test/suite/funcs_1/r/memory_views.result
@@ -10207,7 +10207,8 @@ SHOW FIELDS FROM v1;
ERROR 42S02: Table 'test.v1' doesn't exist
CHECK TABLE v1;
Table Op Msg_type Msg_text
-test.v1 check error Table 'test.v1' doesn't exist
+test.v1 check Error Table 'test.v1' doesn't exist
+test.v1 check error Corrupt
DESCRIBE v1;
ERROR 42S02: Table 'test.v1' doesn't exist
EXPLAIN SELECT * FROM v1;
diff --git a/mysql-test/suite/funcs_1/r/myisam__datadict.result b/mysql-test/suite/funcs_1/r/myisam__datadict.result
index 36662ad9259..cbd13bae564 100644
--- a/mysql-test/suite/funcs_1/r/myisam__datadict.result
+++ b/mysql-test/suite/funcs_1/r/myisam__datadict.result
@@ -6108,6 +6108,7 @@ INTO OUTFILE '../tmp/out.myisam.db.file'
WHERE schema_name LIKE 'db_%';
CREATE USER user_3212@localhost;
GRANT ALL ON db_datadict.* TO user_3212@localhost;
+GRANT FILE ON *.* TO user_3212@localhost;
connect(localhost,user_3212,,db_datadict,MYSQL_PORT,MYSQL_SOCK);
user_3212@localhost db_datadict
@@ -6116,7 +6117,7 @@ INTO OUTFILE '../tmp/out.myisam.user.file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM schemata LIMIT 0, 5;
-ERROR 28000: Access denied for user 'user_3212'@'localhost' (using password: NO)
+ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
SELECT *
FROM schemata LIMIT 0, 5;
ERROR 42S02: Table 'db_datadict.schemata' doesn't exist
diff --git a/mysql-test/suite/funcs_1/r/myisam_func_view.result b/mysql-test/suite/funcs_1/r/myisam_func_view.result
index ab4508fb302..94cba9796a2 100644
--- a/mysql-test/suite/funcs_1/r/myisam_func_view.result
+++ b/mysql-test/suite/funcs_1/r/myisam_func_view.result
@@ -9,7 +9,7 @@ CREATE TABLE t1_values
id BIGINT AUTO_INCREMENT,
select_id BIGINT,
PRIMARY KEY(id)
-) ENGINE = <engine_to_be_tested>;
+) ENGINE = 'MYISAM' ;
ALTER TABLE t1_values ADD my_char_30 CHAR(30);
ALTER TABLE t1_values ADD my_varchar_1000 VARCHAR(1000);
ALTER TABLE t1_values ADD my_binary_30 BINARY(30);
@@ -123,8 +123,10 @@ INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '1 17:58';
INSERT INTO t1_values SET select_id = @select_id,
my_bigint = 1758;
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = +1.758E+3;
+
+some statements disabled because of
+Bug#12440: CAST(data type DOUBLE AS TIME) strange results
+--------------------------------------------------------------------------------
INSERT INTO t1_values SET select_id = @select_id,
my_char_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
@@ -133,20 +135,29 @@ INSERT INTO t1_values SET select_id = @select_id,
my_binary_30 = '-3333.3333';
INSERT INTO t1_values SET select_id = @select_id,
my_varbinary_1000 = '-3333.3333';
-INSERT INTO t1_values SET select_id = @select_id,
-my_double = -0.33333333E+4;
+
+some statements disabled because of
+Bug#13349: CAST(1.0E+300 TO DECIMAL) returns wrong result + diff little/big endian
+--------------------------------------------------------------------------------
"Attention: CAST --> SIGNED INTEGER
+ The file with expected results suffers from
+ Bug#5083 Big integer values are inserted as negative into
+ decimal/string columns
Bug#5913 Traditional mode: BIGINT range not correctly delimited
- Status: To be fixed later"
+ Both have the status: To be fixed later"
+--------------------------------------------------------------------------------
+
+some statements disabled because of
+Bug #13344: CAST(1E+300 TO signed int) on little endian CPU, wrong result
--------------------------------------------------------------------------------
"Attention: CAST --> UNSIGNED INTEGER
- The file with expected results suffers from Bug 5913"
+ The file with expected results suffers from Bug 5083 5913 9809"
--------------------------------------------------------------------------------
some statements disabled because of
-Bug#5913 Traditional mode: BIGINT range not correctly delimited
+Bugs#8663: cant use bgint unsigned as input to cast
--------------------------------------------------------------------------------
SET @my_select = 'SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values';
@@ -164,6 +175,11 @@ SET @my_select = 'SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values';
+
+"Attention: IF(my_year IS NULL, ...
+ The file with expected results suffers from
+ Bug#11689. successful CREATE VIEW but SELECT on view fails."
+--------------------------------------------------------------------------------
SET @my_select = 'SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT BIT_LENGTH(my_varchar_1000),
@@ -186,7 +202,7 @@ SET @my_select =
'SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values';
"Attention: LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', <numeric column>)
- The file with expected results suffers from Bug 10963"
+ The file with expected results suffers from Bug 10963 11728"
and the testcases with length = BIGINT or DOUBLE column are deactivated,
because there are 32/64 Bit differences
--------------------------------------------------------------------------------
@@ -200,9 +216,8 @@ SET @my_select = 'SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values';
SET @my_select = 'SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values';
-SELECT 'äÄ@' INTO OUTFILE '../tmp/func_view.dat';
SET @my_select =
-'SELECT LOAD_FILE(''../tmp/func_view.dat''), id FROM t1_values';
+'SELECT LOAD_FILE(''../log/current_test''), id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_char_30),
my_char_30, id FROM t1_values';
SET @my_select = 'SELECT LOCATE(''char'', my_varchar_1000),
@@ -284,19 +299,19 @@ SET sql_mode = '';
--------------------------------------------------------------------------------
CREATE VIEW v1 AS SELECT my_char_30, id FROM t1_values;
SELECT my_char_30, id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL order by id;
+WHERE select_id = 187 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 190 OR select_id IS NULL) order by id;
+WHERE select_id = 187 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values;
SELECT CONCAT('A',my_char_30), my_char_30, id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL order by id;
+WHERE select_id = 186 OR select_id IS NULL;
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -308,7 +323,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select concat(_latin1'A',`t1_values`.`my_char_30`) AS `CONCAT('A',my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 189 OR select_id IS NULL) order by id;
+WHERE select_id = 186 OR select_id IS NULL);
CONCAT('A',my_char_30) my_char_30 id
NULL NULL 1
A 2
@@ -322,13 +337,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LTRIM(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL order by id;
+WHERE select_id = 185 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varbinary_1000`) AS `LTRIM(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 188 OR select_id IS NULL) order by id;
+WHERE select_id = 185 OR select_id IS NULL);
DROP VIEW v1;
@@ -336,13 +351,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LTRIM(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL order by id;
+WHERE select_id = 184 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_binary_30`) AS `LTRIM(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 187 OR select_id IS NULL) order by id;
+WHERE select_id = 184 OR select_id IS NULL);
DROP VIEW v1;
@@ -350,13 +365,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LTRIM(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL order by id;
+WHERE select_id = 183 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_varchar_1000`) AS `LTRIM(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 186 OR select_id IS NULL) order by id;
+WHERE select_id = 183 OR select_id IS NULL);
DROP VIEW v1;
@@ -364,13 +379,13 @@ CREATE VIEW v1 AS SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values;
SELECT LTRIM(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL order by id;
+WHERE select_id = 182 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ltrim(`t1_values`.`my_char_30`) AS `LTRIM(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 185 OR select_id IS NULL) order by id;
+WHERE select_id = 182 OR select_id IS NULL);
DROP VIEW v1;
@@ -378,13 +393,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOWER(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL order by id;
+WHERE select_id = 181 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varbinary_1000`) AS `LOWER(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 184 OR select_id IS NULL) order by id;
+WHERE select_id = 181 OR select_id IS NULL);
DROP VIEW v1;
@@ -392,13 +407,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOWER(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL order by id;
+WHERE select_id = 180 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_binary_30`) AS `LOWER(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 183 OR select_id IS NULL) order by id;
+WHERE select_id = 180 OR select_id IS NULL);
DROP VIEW v1;
@@ -406,13 +421,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOWER(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL order by id;
+WHERE select_id = 179 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LOWER(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 182 OR select_id IS NULL) order by id;
+WHERE select_id = 179 OR select_id IS NULL);
DROP VIEW v1;
@@ -420,13 +435,13 @@ CREATE VIEW v1 AS SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values;
SELECT LOWER(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL order by id;
+WHERE select_id = 178 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_char_30`) AS `LOWER(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 181 OR select_id IS NULL) order by id;
+WHERE select_id = 178 OR select_id IS NULL);
DROP VIEW v1;
@@ -434,13 +449,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_decimal),
my_decimal, id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL order by id;
+WHERE select_id = 177 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_decimal`) AS `LOCATE('-', ' - -ABC', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 180 OR select_id IS NULL) order by id;
+WHERE select_id = 177 OR select_id IS NULL);
DROP VIEW v1;
@@ -448,13 +463,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_double),
my_double, id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL order by id;
+WHERE select_id = 176 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_double`) AS `LOCATE('-', ' - -ABC', my_double)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 179 OR select_id IS NULL) order by id;
+WHERE select_id = 176 OR select_id IS NULL);
DROP VIEW v1;
@@ -462,13 +477,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values;
SELECT LOCATE('-', ' - -ABC', my_bigint),
my_bigint, id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL order by id;
+WHERE select_id = 175 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',_latin1' - -ABC',`t1_values`.`my_bigint`) AS `LOCATE('-', ' - -ABC', my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 178 OR select_id IS NULL) order by id;
+WHERE select_id = 175 OR select_id IS NULL);
DROP VIEW v1;
@@ -476,13 +491,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('-', my_varbinary_1000, 3),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL order by id;
+WHERE select_id = 174 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varbinary_1000`,3) AS `LOCATE('-', my_varbinary_1000, 3)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 177 OR select_id IS NULL) order by id;
+WHERE select_id = 174 OR select_id IS NULL);
DROP VIEW v1;
@@ -490,13 +505,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values;
SELECT LOCATE('-', my_binary_30, 3),
my_binary_30, id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL order by id;
+WHERE select_id = 173 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_binary_30`,3) AS `LOCATE('-', my_binary_30, 3)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 176 OR select_id IS NULL) order by id;
+WHERE select_id = 173 OR select_id IS NULL);
DROP VIEW v1;
@@ -504,13 +519,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('-', my_varchar_1000, 3),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL order by id;
+WHERE select_id = 172 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_varchar_1000`,3) AS `LOCATE('-', my_varchar_1000, 3)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 175 OR select_id IS NULL) order by id;
+WHERE select_id = 172 OR select_id IS NULL);
DROP VIEW v1;
@@ -518,13 +533,13 @@ CREATE VIEW v1 AS SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values;
SELECT LOCATE('-', my_char_30, 3),
my_char_30, id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL order by id;
+WHERE select_id = 171 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'-',`t1_values`.`my_char_30`,3) AS `LOCATE('-', my_char_30, 3)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 174 OR select_id IS NULL) order by id;
+WHERE select_id = 171 OR select_id IS NULL);
DROP VIEW v1;
@@ -532,13 +547,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_binary_30 ),
my_varbinary_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL order by id;
+WHERE select_id = 170 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varbinary_1000, my_binary_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 173 OR select_id IS NULL) order by id;
+WHERE select_id = 170 OR select_id IS NULL);
DROP VIEW v1;
@@ -546,13 +561,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varchar_1000 ),
my_varbinary_1000, my_varchar_1000 id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL order by id;
+WHERE select_id = 169 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varbinary_1000, my_varchar_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 172 OR select_id IS NULL) order by id;
+WHERE select_id = 169 OR select_id IS NULL);
DROP VIEW v1;
@@ -560,13 +575,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_char_30 ),
my_varbinary_1000, my_char_30 id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL order by id;
+WHERE select_id = 168 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varbinary_1000, my_char_30 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 171 OR select_id IS NULL) order by id;
+WHERE select_id = 168 OR select_id IS NULL);
DROP VIEW v1;
@@ -574,13 +589,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE(my_varbinary_1000, my_varbinary_1000 ),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL order by id;
+WHERE select_id = 167 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varbinary_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varbinary_1000, my_varbinary_1000 )`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 170 OR select_id IS NULL) order by id;
+WHERE select_id = 167 OR select_id IS NULL);
DROP VIEW v1;
@@ -588,13 +603,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varbinary_1000 ),
my_binary_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL order by id;
+WHERE select_id = 166 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_binary_30, my_varbinary_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 169 OR select_id IS NULL) order by id;
+WHERE select_id = 166 OR select_id IS NULL);
DROP VIEW v1;
@@ -602,13 +617,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_varchar_1000 ),
my_binary_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL order by id;
+WHERE select_id = 165 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_binary_30, my_varchar_1000 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 168 OR select_id IS NULL) order by id;
+WHERE select_id = 165 OR select_id IS NULL);
DROP VIEW v1;
@@ -616,13 +631,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values;
SELECT LOCATE(my_binary_30, my_char_30 ),
my_binary_30, my_char_30 id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL order by id;
+WHERE select_id = 164 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_binary_30, my_char_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 167 OR select_id IS NULL) order by id;
+WHERE select_id = 164 OR select_id IS NULL);
DROP VIEW v1;
@@ -630,13 +645,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values;
SELECT LOCATE(my_binary_30, my_binary_30 ),
my_binary_30, id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL order by id;
+WHERE select_id = 163 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_binary_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_binary_30, my_binary_30 )`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 166 OR select_id IS NULL) order by id;
+WHERE select_id = 163 OR select_id IS NULL);
DROP VIEW v1;
@@ -644,13 +659,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varbinary_1000 ),
my_varchar_1000, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL order by id;
+WHERE select_id = 162 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_varchar_1000, my_varbinary_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 165 OR select_id IS NULL) order by id;
+WHERE select_id = 162 OR select_id IS NULL);
DROP VIEW v1;
@@ -658,13 +673,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_binary_30 ),
my_varchar_1000, my_binary_30 id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL order by id;
+WHERE select_id = 161 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_binary_30`) AS `LOCATE(my_varchar_1000, my_binary_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 164 OR select_id IS NULL) order by id;
+WHERE select_id = 161 OR select_id IS NULL);
DROP VIEW v1;
@@ -672,13 +687,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_char_30 ),
my_varchar_1000, my_char_30 id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL order by id;
+WHERE select_id = 160 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_char_30`) AS `LOCATE(my_varchar_1000, my_char_30 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`my_char_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 163 OR select_id IS NULL) order by id;
+WHERE select_id = 160 OR select_id IS NULL);
DROP VIEW v1;
@@ -686,13 +701,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE(my_varchar_1000, my_varchar_1000 ),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL order by id;
+WHERE select_id = 159 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_varchar_1000`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_varchar_1000, my_varchar_1000 )`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 162 OR select_id IS NULL) order by id;
+WHERE select_id = 159 OR select_id IS NULL);
DROP VIEW v1;
@@ -700,13 +715,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varbinary_1000 ),
my_char_30, my_varbinary_1000 id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL order by id;
+WHERE select_id = 158 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varbinary_1000`) AS `LOCATE(my_char_30, my_varbinary_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varbinary_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 161 OR select_id IS NULL) order by id;
+WHERE select_id = 158 OR select_id IS NULL);
DROP VIEW v1;
@@ -714,13 +729,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values;
SELECT LOCATE(my_char_30, my_binary_30 ),
my_char_30, my_binary_30 id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL order by id;
+WHERE select_id = 157 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_binary_30`) AS `LOCATE(my_char_30, my_binary_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_binary_30` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 160 OR select_id IS NULL) order by id;
+WHERE select_id = 157 OR select_id IS NULL);
DROP VIEW v1;
@@ -728,13 +743,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values;
SELECT LOCATE(my_char_30, my_varchar_1000 ),
my_char_30, my_varchar_1000 id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL order by id;
+WHERE select_id = 156 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_varchar_1000`) AS `LOCATE(my_char_30, my_varchar_1000 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`my_varchar_1000` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 159 OR select_id IS NULL) order by id;
+WHERE select_id = 156 OR select_id IS NULL);
DROP VIEW v1;
@@ -742,13 +757,13 @@ CREATE VIEW v1 AS SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values;
SELECT LOCATE(my_char_30, my_char_30 ),
my_char_30, id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL order by id;
+WHERE select_id = 155 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(`t1_values`.`my_char_30`,`t1_values`.`my_char_30`) AS `LOCATE(my_char_30, my_char_30 )`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 158 OR select_id IS NULL) order by id;
+WHERE select_id = 155 OR select_id IS NULL);
DROP VIEW v1;
@@ -756,13 +771,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LOCATE('char', my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL order by id;
+WHERE select_id = 154 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varbinary_1000`) AS `LOCATE('char', my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 157 OR select_id IS NULL) order by id;
+WHERE select_id = 154 OR select_id IS NULL);
DROP VIEW v1;
@@ -770,13 +785,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LOCATE('char', my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL order by id;
+WHERE select_id = 153 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_binary_30`) AS `LOCATE('char', my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 156 OR select_id IS NULL) order by id;
+WHERE select_id = 153 OR select_id IS NULL);
DROP VIEW v1;
@@ -784,13 +799,13 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LOCATE('char', my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL order by id;
+WHERE select_id = 152 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_varchar_1000`) AS `LOCATE('char', my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 155 OR select_id IS NULL) order by id;
+WHERE select_id = 152 OR select_id IS NULL);
DROP VIEW v1;
@@ -798,46 +813,46 @@ CREATE VIEW v1 AS SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values;
SELECT LOCATE('char', my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL order by id;
+WHERE select_id = 151 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `LOCATE('char', my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 154 OR select_id IS NULL) order by id;
+WHERE select_id = 151 OR select_id IS NULL);
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values;
-SELECT LOAD_FILE('../tmp/func_view.dat'), id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+CREATE VIEW v1 AS SELECT LOAD_FILE('../log/current_test'), id FROM t1_values;
+SELECT LOAD_FILE('../log/current_test'), id FROM t1_values
+WHERE select_id = 150 OR select_id IS NULL;
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: myisam_func_view
1
-äÄ@
+CURRENT_TEST: myisam_func_view
2
-äÄ@
+CURRENT_TEST: myisam_func_view
3
-äÄ@
+CURRENT_TEST: myisam_func_view
4
-äÄ@
+CURRENT_TEST: myisam_func_view
5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../tmp/func_view.dat') AS `LOAD_FILE('../tmp/func_view.dat')`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select load_file(_latin1'../log/current_test') AS `LOAD_FILE('../log/current_test')`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 153 OR select_id IS NULL) order by id;
-LOAD_FILE('../tmp/func_view.dat') id
-äÄ@
+WHERE select_id = 150 OR select_id IS NULL);
+LOAD_FILE('../log/current_test') id
+CURRENT_TEST: myisam_func_view
1
-äÄ@
+CURRENT_TEST: myisam_func_view
2
-äÄ@
+CURRENT_TEST: myisam_func_view
3
-äÄ@
+CURRENT_TEST: myisam_func_view
4
-äÄ@
+CURRENT_TEST: myisam_func_view
5
DROP VIEW v1;
@@ -846,13 +861,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL order by id;
+WHERE select_id = 149 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varbinary_1000`) AS `LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 152 OR select_id IS NULL) order by id;
+WHERE select_id = 149 OR select_id IS NULL);
DROP VIEW v1;
@@ -860,13 +875,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL order by id;
+WHERE select_id = 148 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_binary_30`) AS `LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 151 OR select_id IS NULL) order by id;
+WHERE select_id = 148 OR select_id IS NULL);
DROP VIEW v1;
@@ -874,13 +889,13 @@ CREATE VIEW v1 AS SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL order by id;
+WHERE select_id = 147 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_varchar_1000`) AS `LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 150 OR select_id IS NULL) order by id;
+WHERE select_id = 147 OR select_id IS NULL);
DROP VIEW v1;
@@ -888,19 +903,19 @@ CREATE VIEW v1 AS SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL order by id;
+WHERE select_id = 146 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select length(`t1_values`.`my_char_30`) AS `LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 149 OR select_id IS NULL) order by id;
+WHERE select_id = 146 OR select_id IS NULL);
DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values;
SELECT LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal), my_decimal, id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL order by id;
+WHERE select_id = 145 OR select_id IS NULL;
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -915,7 +930,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(_latin1'AaBbCcDdEeFfGgHhIiJjÄäÜüÖö',`t1_values`.`my_decimal`) AS `LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 148 OR select_id IS NULL) order by id;
+WHERE select_id = 145 OR select_id IS NULL);
LEFT('AaBbCcDdEeFfGgHhIiJjÄäÜüÖö', my_decimal) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -930,7 +945,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values;
SELECT LEFT(my_varbinary_1000, 2), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL order by id;
+WHERE select_id = 144 OR select_id IS NULL;
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -942,7 +957,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varbinary_1000`,2) AS `LEFT(my_varbinary_1000, 2)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 147 OR select_id IS NULL) order by id;
+WHERE select_id = 144 OR select_id IS NULL);
LEFT(my_varbinary_1000, 2) my_varbinary_1000 id
NULL NULL 1
2
@@ -954,7 +969,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values;
SELECT LEFT(my_binary_30, 2), my_binary_30, id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL order by id;
+WHERE select_id = 143 OR select_id IS NULL;
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -966,7 +981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_binary_30`,2) AS `LEFT(my_binary_30, 2)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 146 OR select_id IS NULL) order by id;
+WHERE select_id = 143 OR select_id IS NULL);
LEFT(my_binary_30, 2) my_binary_30 id
NULL NULL 1
@@ -978,7 +993,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values;
SELECT LEFT(my_varchar_1000, 2), my_varchar_1000, id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL order by id;
+WHERE select_id = 142 OR select_id IS NULL;
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -990,7 +1005,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_varchar_1000`,2) AS `LEFT(my_varchar_1000, 2)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 145 OR select_id IS NULL) order by id;
+WHERE select_id = 142 OR select_id IS NULL);
LEFT(my_varchar_1000, 2) my_varchar_1000 id
NULL NULL 1
2
@@ -1002,7 +1017,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values;
SELECT LEFT(my_char_30, 2), my_char_30, id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL order by id;
+WHERE select_id = 141 OR select_id IS NULL;
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1014,7 +1029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select left(`t1_values`.`my_char_30`,2) AS `LEFT(my_char_30, 2)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 144 OR select_id IS NULL) order by id;
+WHERE select_id = 141 OR select_id IS NULL);
LEFT(my_char_30, 2) my_char_30 id
NULL NULL 1
2
@@ -1028,13 +1043,13 @@ CREATE VIEW v1 AS SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT LCASE(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL order by id;
+WHERE select_id = 140 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select lcase(`t1_values`.`my_varchar_1000`) AS `LCASE(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 143 OR select_id IS NULL) order by id;
+WHERE select_id = 140 OR select_id IS NULL);
DROP VIEW v1;
@@ -1042,13 +1057,13 @@ CREATE VIEW v1 AS SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values;
SELECT INSTR(my_char_30, 'char'),
my_char_30, id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL order by id;
+WHERE select_id = 139 OR select_id IS NULL;
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select locate(_latin1'char',`t1_values`.`my_char_30`) AS `INSTR(my_char_30, 'char')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 142 OR select_id IS NULL) order by id;
+WHERE select_id = 139 OR select_id IS NULL);
DROP VIEW v1;
@@ -1056,7 +1071,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varbinary_1000),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL order by id;
+WHERE select_id = 138 OR select_id IS NULL;
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1068,7 +1083,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varbinary_1000`) AS `BIT_LENGTH(my_varbinary_1000)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 141 OR select_id IS NULL) order by id;
+WHERE select_id = 138 OR select_id IS NULL);
BIT_LENGTH(my_varbinary_1000) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -1082,7 +1097,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values;
SELECT BIT_LENGTH(my_binary_30),
my_binary_30, id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL order by id;
+WHERE select_id = 137 OR select_id IS NULL;
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1094,7 +1109,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_binary_30`) AS `BIT_LENGTH(my_binary_30)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 140 OR select_id IS NULL) order by id;
+WHERE select_id = 137 OR select_id IS NULL);
BIT_LENGTH(my_binary_30) my_binary_30 id
NULL NULL 1
240
@@ -1108,7 +1123,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values;
SELECT BIT_LENGTH(my_varchar_1000),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL order by id;
+WHERE select_id = 136 OR select_id IS NULL;
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1120,7 +1135,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_varchar_1000`) AS `BIT_LENGTH(my_varchar_1000)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 139 OR select_id IS NULL) order by id;
+WHERE select_id = 136 OR select_id IS NULL);
BIT_LENGTH(my_varchar_1000) my_varchar_1000 id
NULL NULL 1
0 2
@@ -1134,7 +1149,7 @@ CREATE VIEW v1 AS SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values;
SELECT BIT_LENGTH(my_char_30),
my_char_30, id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL order by id;
+WHERE select_id = 135 OR select_id IS NULL;
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1146,7 +1161,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select bit_length(`t1_values`.`my_char_30`) AS `BIT_LENGTH(my_char_30)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 138 OR select_id IS NULL) order by id;
+WHERE select_id = 135 OR select_id IS NULL);
BIT_LENGTH(my_char_30) my_char_30 id
NULL NULL 1
0 2
@@ -1160,7 +1175,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values;
SELECT IFNULL(my_year,'IS_NULL'),
my_year, id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL order by id;
+WHERE select_id = 134 OR select_id IS NULL;
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1172,7 +1187,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_year`,_latin1'IS_NULL') AS `IFNULL(my_year,'IS_NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 137 OR select_id IS NULL) order by id;
+WHERE select_id = 134 OR select_id IS NULL);
IFNULL(my_year,'IS_NULL') my_year id
IS_NULL NULL 1
1901 1901 2
@@ -1186,7 +1201,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values;
SELECT IFNULL(my_time,'IS_NULL'),
my_time, id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL order by id;
+WHERE select_id = 133 OR select_id IS NULL;
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1198,7 +1213,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_time`,_latin1'IS_NULL') AS `IFNULL(my_time,'IS_NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 136 OR select_id IS NULL) order by id;
+WHERE select_id = 133 OR select_id IS NULL);
IFNULL(my_time,'IS_NULL') my_time id
IS_NULL NULL 1
-838:59:59 -838:59:59 2
@@ -1212,7 +1227,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values;
SELECT IFNULL(my_timestamp,'IS_NULL'),
my_timestamp, id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL order by id;
+WHERE select_id = 132 OR select_id IS NULL;
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1224,7 +1239,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_timestamp`,_latin1'IS_NULL') AS `IFNULL(my_timestamp,'IS_NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 135 OR select_id IS NULL) order by id;
+WHERE select_id = 132 OR select_id IS NULL);
IFNULL(my_timestamp,'IS_NULL') my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -1238,7 +1253,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values;
SELECT IFNULL(my_date,'IS_NULL'),
my_date, id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL order by id;
+WHERE select_id = 131 OR select_id IS NULL;
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1250,7 +1265,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_date`,_latin1'IS_NULL') AS `IFNULL(my_date,'IS_NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 134 OR select_id IS NULL) order by id;
+WHERE select_id = 131 OR select_id IS NULL);
IFNULL(my_date,'IS_NULL') my_date id
IS_NULL NULL 1
0001-01-01 0001-01-01 2
@@ -1264,7 +1279,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values;
SELECT IFNULL(my_datetime,'IS_NULL'),
my_datetime, id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL order by id;
+WHERE select_id = 130 OR select_id IS NULL;
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1276,7 +1291,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_datetime`,_latin1'IS_NULL') AS `IFNULL(my_datetime,'IS_NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 133 OR select_id IS NULL) order by id;
+WHERE select_id = 130 OR select_id IS NULL);
IFNULL(my_datetime,'IS_NULL') my_datetime id
IS_NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -1290,7 +1305,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values;
SELECT IFNULL(my_double,'IS_NULL'),
my_double, id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL order by id;
+WHERE select_id = 129 OR select_id IS NULL;
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1302,7 +1317,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_double`,_latin1'IS_NULL') AS `IFNULL(my_double,'IS_NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 132 OR select_id IS NULL) order by id;
+WHERE select_id = 129 OR select_id IS NULL);
IFNULL(my_double,'IS_NULL') my_double id
IS_NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -1316,7 +1331,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values;
SELECT IFNULL(my_decimal,'IS_NULL'),
my_decimal, id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL order by id;
+WHERE select_id = 128 OR select_id IS NULL;
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1328,7 +1343,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_decimal`,_latin1'IS_NULL') AS `IFNULL(my_decimal,'IS_NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 131 OR select_id IS NULL) order by id;
+WHERE select_id = 128 OR select_id IS NULL);
IFNULL(my_decimal,'IS_NULL') my_decimal id
IS_NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1342,7 +1357,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values;
SELECT IFNULL(my_bigint,'IS_NULL'),
my_bigint, id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL order by id;
+WHERE select_id = 127 OR select_id IS NULL;
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1354,7 +1369,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_bigint`,_latin1'IS_NULL') AS `IFNULL(my_bigint,'IS_NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 130 OR select_id IS NULL) order by id;
+WHERE select_id = 127 OR select_id IS NULL);
IFNULL(my_bigint,'IS_NULL') my_bigint id
IS_NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -1368,7 +1383,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values;
SELECT IFNULL(my_varbinary_1000,'IS_NULL'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL order by id;
+WHERE select_id = 126 OR select_id IS NULL;
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1380,7 +1395,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varbinary_1000`,_latin1'IS_NULL') AS `IFNULL(my_varbinary_1000,'IS_NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 129 OR select_id IS NULL) order by id;
+WHERE select_id = 126 OR select_id IS NULL);
IFNULL(my_varbinary_1000,'IS_NULL') my_varbinary_1000 id
IS_NULL NULL 1
2
@@ -1394,7 +1409,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values;
SELECT IFNULL(my_binary_30,'IS_NULL'),
my_binary_30, id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL order by id;
+WHERE select_id = 125 OR select_id IS NULL;
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1406,7 +1421,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_binary_30`,_latin1'IS_NULL') AS `IFNULL(my_binary_30,'IS_NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 128 OR select_id IS NULL) order by id;
+WHERE select_id = 125 OR select_id IS NULL);
IFNULL(my_binary_30,'IS_NULL') my_binary_30 id
IS_NULL NULL 1
@@ -1420,7 +1435,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values;
SELECT IFNULL(my_varchar_1000,'IS_NULL'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL order by id;
+WHERE select_id = 124 OR select_id IS NULL;
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1432,7 +1447,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_varchar_1000`,_latin1'IS_NULL') AS `IFNULL(my_varchar_1000,'IS_NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 127 OR select_id IS NULL) order by id;
+WHERE select_id = 124 OR select_id IS NULL);
IFNULL(my_varchar_1000,'IS_NULL') my_varchar_1000 id
IS_NULL NULL 1
2
@@ -1446,7 +1461,7 @@ CREATE VIEW v1 AS SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values;
SELECT IFNULL(my_char_30,'IS_NULL'),
my_char_30, id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL order by id;
+WHERE select_id = 123 OR select_id IS NULL;
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1458,7 +1473,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select ifnull(`t1_values`.`my_char_30`,_latin1'IS_NULL') AS `IFNULL(my_char_30,'IS_NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 126 OR select_id IS NULL) order by id;
+WHERE select_id = 123 OR select_id IS NULL);
IFNULL(my_char_30,'IS_NULL') my_char_30 id
IS_NULL NULL 1
2
@@ -1472,7 +1487,7 @@ CREATE VIEW v1 AS SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values;
SELECT IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL'), my_year, id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL order by id;
+WHERE select_id = 122 OR select_id IS NULL;
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1486,7 +1501,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 125 OR select_id IS NULL) order by id;
+WHERE select_id = 122 OR select_id IS NULL);
IF(my_year IS NULL, 'IS NULL',
'IS NOT NULL') my_year id
IS NULL NULL 1
@@ -1501,7 +1516,7 @@ CREATE VIEW v1 AS SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values;
SELECT IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL'), my_time, id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL order by id;
+WHERE select_id = 121 OR select_id IS NULL;
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1515,7 +1530,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 124 OR select_id IS NULL) order by id;
+WHERE select_id = 121 OR select_id IS NULL);
IF(my_time IS NULL, 'IS NULL',
'IS NOT NULL') my_time id
IS NULL NULL 1
@@ -1530,7 +1545,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL'), my_timestamp, id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL order by id;
+WHERE select_id = 120 OR select_id IS NULL;
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1544,7 +1559,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 123 OR select_id IS NULL) order by id;
+WHERE select_id = 120 OR select_id IS NULL);
IF(my_timestamp IS NULL, 'IS NULL',
'IS NOT NULL') my_timestamp id
IS NOT NULL 0000-00-00 00:00:00 1
@@ -1559,7 +1574,7 @@ CREATE VIEW v1 AS SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values;
SELECT IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL'), my_date, id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL order by id;
+WHERE select_id = 119 OR select_id IS NULL;
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1573,7 +1588,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 122 OR select_id IS NULL) order by id;
+WHERE select_id = 119 OR select_id IS NULL);
IF(my_date IS NULL, 'IS NULL',
'IS NOT NULL') my_date id
IS NULL NULL 1
@@ -1588,7 +1603,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values;
SELECT IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL'), my_datetime, id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL order by id;
+WHERE select_id = 118 OR select_id IS NULL;
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1602,7 +1617,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 121 OR select_id IS NULL) order by id;
+WHERE select_id = 118 OR select_id IS NULL);
IF(my_datetime IS NULL, 'IS NULL',
'IS NOT NULL') my_datetime id
IS NULL NULL 1
@@ -1617,7 +1632,7 @@ CREATE VIEW v1 AS SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values;
SELECT IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL'), my_double, id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL order by id;
+WHERE select_id = 117 OR select_id IS NULL;
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1631,7 +1646,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 120 OR select_id IS NULL) order by id;
+WHERE select_id = 117 OR select_id IS NULL);
IF(my_double IS NULL, 'IS NULL',
'IS NOT NULL') my_double id
IS NULL NULL 1
@@ -1646,7 +1661,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values;
SELECT IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL'), my_decimal, id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL order by id;
+WHERE select_id = 116 OR select_id IS NULL;
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1660,7 +1675,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 119 OR select_id IS NULL) order by id;
+WHERE select_id = 116 OR select_id IS NULL);
IF(my_decimal IS NULL, 'IS NULL',
'IS NOT NULL') my_decimal id
IS NULL NULL 1
@@ -1675,7 +1690,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values;
SELECT IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL'), my_bigint, id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL order by id;
+WHERE select_id = 115 OR select_id IS NULL;
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1689,7 +1704,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 118 OR select_id IS NULL) order by id;
+WHERE select_id = 115 OR select_id IS NULL);
IF(my_bigint IS NULL, 'IS NULL',
'IS NOT NULL') my_bigint id
IS NULL NULL 1
@@ -1704,7 +1719,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varbinary_1000, id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL order by id;
+WHERE select_id = 114 OR select_id IS NULL;
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1718,7 +1733,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 117 OR select_id IS NULL) order by id;
+WHERE select_id = 114 OR select_id IS NULL);
IF(my_varbinary_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varbinary_1000 id
IS NULL NULL 1
@@ -1733,7 +1748,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_binary_30, id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL order by id;
+WHERE select_id = 113 OR select_id IS NULL;
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1747,7 +1762,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 116 OR select_id IS NULL) order by id;
+WHERE select_id = 113 OR select_id IS NULL);
IF(my_binary_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_binary_30 id
IS NULL NULL 1
@@ -1762,7 +1777,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL'), my_varchar_1000, id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL order by id;
+WHERE select_id = 112 OR select_id IS NULL;
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1776,7 +1791,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 115 OR select_id IS NULL) order by id;
+WHERE select_id = 112 OR select_id IS NULL);
IF(my_varchar_1000 IS NULL, 'IS NULL',
'IS NOT NULL') my_varchar_1000 id
IS NULL NULL 1
@@ -1791,7 +1806,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values;
SELECT IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL'), my_char_30, id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL order by id;
+WHERE select_id = 111 OR select_id IS NULL;
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1805,7 +1820,7 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
'IS NOT NULL')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 114 OR select_id IS NULL) order by id;
+WHERE select_id = 111 OR select_id IS NULL);
IF(my_char_30 IS NULL, 'IS NULL',
'IS NOT NULL') my_char_30 id
IS NULL NULL 1
@@ -1820,7 +1835,7 @@ CREATE VIEW v1 AS SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values;
SELECT IF(my_year, 'IS TRUE', 'IS NOT TRUE'),
my_year, id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL order by id;
+WHERE select_id = 110 OR select_id IS NULL;
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1832,7 +1847,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_year`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_year, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 113 OR select_id IS NULL) order by id;
+WHERE select_id = 110 OR select_id IS NULL);
IF(my_year, 'IS TRUE', 'IS NOT TRUE') my_year id
IS NOT TRUE NULL 1
IS TRUE 1901 2
@@ -1846,7 +1861,7 @@ CREATE VIEW v1 AS SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values;
SELECT IF(my_time, 'IS TRUE', 'IS NOT TRUE'),
my_time, id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL order by id;
+WHERE select_id = 109 OR select_id IS NULL;
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1858,7 +1873,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_time`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_time, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 112 OR select_id IS NULL) order by id;
+WHERE select_id = 109 OR select_id IS NULL);
IF(my_time, 'IS TRUE', 'IS NOT TRUE') my_time id
IS NOT TRUE NULL 1
IS TRUE -838:59:59 2
@@ -1872,7 +1887,7 @@ CREATE VIEW v1 AS SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values;
SELECT IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE'),
my_timestamp, id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL order by id;
+WHERE select_id = 108 OR select_id IS NULL;
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1884,7 +1899,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_timestamp`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 111 OR select_id IS NULL) order by id;
+WHERE select_id = 108 OR select_id IS NULL);
IF(my_timestamp, 'IS TRUE', 'IS NOT TRUE') my_timestamp id
IS NOT TRUE 0000-00-00 00:00:00 1
IS TRUE 1970-01-01 03:00:01 2
@@ -1898,7 +1913,7 @@ CREATE VIEW v1 AS SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values;
SELECT IF(my_date, 'IS TRUE', 'IS NOT TRUE'),
my_date, id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL order by id;
+WHERE select_id = 107 OR select_id IS NULL;
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1910,7 +1925,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_date`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_date, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 110 OR select_id IS NULL) order by id;
+WHERE select_id = 107 OR select_id IS NULL);
IF(my_date, 'IS TRUE', 'IS NOT TRUE') my_date id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 2
@@ -1924,7 +1939,7 @@ CREATE VIEW v1 AS SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values;
SELECT IF(my_datetime, 'IS TRUE', 'IS NOT TRUE'),
my_datetime, id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL order by id;
+WHERE select_id = 106 OR select_id IS NULL;
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1936,7 +1951,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_datetime`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_datetime, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 109 OR select_id IS NULL) order by id;
+WHERE select_id = 106 OR select_id IS NULL);
IF(my_datetime, 'IS TRUE', 'IS NOT TRUE') my_datetime id
IS NOT TRUE NULL 1
IS TRUE 0001-01-01 00:00:00 2
@@ -1950,7 +1965,7 @@ CREATE VIEW v1 AS SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values;
SELECT IF(my_double, 'IS TRUE', 'IS NOT TRUE'),
my_double, id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL order by id;
+WHERE select_id = 105 OR select_id IS NULL;
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1962,7 +1977,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_double`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_double, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 108 OR select_id IS NULL) order by id;
+WHERE select_id = 105 OR select_id IS NULL);
IF(my_double, 'IS TRUE', 'IS NOT TRUE') my_double id
IS NOT TRUE NULL 1
IS TRUE -1.7976931348623e+308 2
@@ -1976,7 +1991,7 @@ CREATE VIEW v1 AS SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values;
SELECT IF(my_decimal, 'IS TRUE', 'IS NOT TRUE'),
my_decimal, id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL order by id;
+WHERE select_id = 104 OR select_id IS NULL;
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -1988,7 +2003,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_decimal`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_decimal, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 107 OR select_id IS NULL) order by id;
+WHERE select_id = 104 OR select_id IS NULL);
IF(my_decimal, 'IS TRUE', 'IS NOT TRUE') my_decimal id
IS NOT TRUE NULL 1
IS TRUE -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2002,7 +2017,7 @@ CREATE VIEW v1 AS SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values;
SELECT IF(my_bigint, 'IS TRUE', 'IS NOT TRUE'),
my_bigint, id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL order by id;
+WHERE select_id = 103 OR select_id IS NULL;
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2014,7 +2029,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_bigint`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_bigint, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 106 OR select_id IS NULL) order by id;
+WHERE select_id = 103 OR select_id IS NULL);
IF(my_bigint, 'IS TRUE', 'IS NOT TRUE') my_bigint id
IS NOT TRUE NULL 1
IS TRUE -9223372036854775808 2
@@ -2028,7 +2043,7 @@ CREATE VIEW v1 AS SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values;
SELECT IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL order by id;
+WHERE select_id = 102 OR select_id IS NULL;
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2040,7 +2055,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varbinary_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 105 OR select_id IS NULL) order by id;
+WHERE select_id = 102 OR select_id IS NULL);
IF(my_varbinary_1000, 'IS TRUE', 'IS NOT TRUE') my_varbinary_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2054,7 +2069,7 @@ CREATE VIEW v1 AS SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values;
SELECT IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE'),
my_binary_30, id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL order by id;
+WHERE select_id = 101 OR select_id IS NULL;
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2071,7 +2086,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_binary_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 104 OR select_id IS NULL) order by id;
+WHERE select_id = 101 OR select_id IS NULL);
IF(my_binary_30, 'IS TRUE', 'IS NOT TRUE') my_binary_30 id
IS NOT TRUE NULL 1
IS NOT TRUE
@@ -2090,7 +2105,7 @@ CREATE VIEW v1 AS SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values;
SELECT IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE'),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL order by id;
+WHERE select_id = 100 OR select_id IS NULL;
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2102,7 +2117,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_varchar_1000`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 103 OR select_id IS NULL) order by id;
+WHERE select_id = 100 OR select_id IS NULL);
IF(my_varchar_1000, 'IS TRUE', 'IS NOT TRUE') my_varchar_1000 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2116,7 +2131,7 @@ CREATE VIEW v1 AS SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values;
SELECT IF(my_char_30, 'IS TRUE', 'IS NOT TRUE'),
my_char_30, id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL order by id;
+WHERE select_id = 99 OR select_id IS NULL;
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2131,7 +2146,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select if(`t1_values`.`my_char_30`,_latin1'IS TRUE',_latin1'IS NOT TRUE') AS `IF(my_char_30, 'IS TRUE', 'IS NOT TRUE')`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 102 OR select_id IS NULL) order by id;
+WHERE select_id = 99 OR select_id IS NULL);
IF(my_char_30, 'IS TRUE', 'IS NOT TRUE') my_char_30 id
IS NOT TRUE NULL 1
IS NOT TRUE 2
@@ -2148,7 +2163,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING koi8r),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL order by id;
+WHERE select_id = 98 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2160,7 +2175,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using koi8r) AS `CONVERT(my_varbinary_1000 USING koi8r)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 101 OR select_id IS NULL) order by id;
+WHERE select_id = 98 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING koi8r) my_varbinary_1000 id
NULL NULL 1
2
@@ -2174,7 +2189,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING koi8r),
my_binary_30, id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL order by id;
+WHERE select_id = 97 OR select_id IS NULL;
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2186,7 +2201,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using koi8r) AS `CONVERT(my_binary_30 USING koi8r)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 100 OR select_id IS NULL) order by id;
+WHERE select_id = 97 OR select_id IS NULL);
CONVERT(my_binary_30 USING koi8r) my_binary_30 id
NULL NULL 1
@@ -2200,7 +2215,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING koi8r),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL order by id;
+WHERE select_id = 96 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2212,7 +2227,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using koi8r) AS `CONVERT(my_varchar_1000 USING koi8r)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 99 OR select_id IS NULL) order by id;
+WHERE select_id = 96 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING koi8r) my_varchar_1000 id
NULL NULL 1
2
@@ -2226,7 +2241,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING koi8r),
my_char_30, id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL order by id;
+WHERE select_id = 95 OR select_id IS NULL;
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2238,7 +2253,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using koi8r) AS `CONVERT(my_char_30 USING koi8r)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 98 OR select_id IS NULL) order by id;
+WHERE select_id = 95 OR select_id IS NULL);
CONVERT(my_char_30 USING koi8r) my_char_30 id
NULL NULL 1
2
@@ -2252,7 +2267,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values;
SELECT CONVERT(my_varbinary_1000 USING utf8),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL order by id;
+WHERE select_id = 94 OR select_id IS NULL;
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2264,7 +2279,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varbinary_1000` using utf8) AS `CONVERT(my_varbinary_1000 USING utf8)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 97 OR select_id IS NULL) order by id;
+WHERE select_id = 94 OR select_id IS NULL);
CONVERT(my_varbinary_1000 USING utf8) my_varbinary_1000 id
NULL NULL 1
2
@@ -2278,7 +2293,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values;
SELECT CONVERT(my_binary_30 USING utf8),
my_binary_30, id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL order by id;
+WHERE select_id = 93 OR select_id IS NULL;
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2290,7 +2305,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_binary_30` using utf8) AS `CONVERT(my_binary_30 USING utf8)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 96 OR select_id IS NULL) order by id;
+WHERE select_id = 93 OR select_id IS NULL);
CONVERT(my_binary_30 USING utf8) my_binary_30 id
NULL NULL 1
@@ -2304,7 +2319,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values;
SELECT CONVERT(my_varchar_1000 USING utf8),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL order by id;
+WHERE select_id = 92 OR select_id IS NULL;
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2316,7 +2331,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_varchar_1000` using utf8) AS `CONVERT(my_varchar_1000 USING utf8)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 95 OR select_id IS NULL) order by id;
+WHERE select_id = 92 OR select_id IS NULL);
CONVERT(my_varchar_1000 USING utf8) my_varchar_1000 id
NULL NULL 1
2
@@ -2330,7 +2345,7 @@ CREATE VIEW v1 AS SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values;
SELECT CONVERT(my_char_30 USING utf8),
my_char_30, id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL order by id;
+WHERE select_id = 91 OR select_id IS NULL;
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2342,7 +2357,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select convert(`t1_values`.`my_char_30` using utf8) AS `CONVERT(my_char_30 USING utf8)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 94 OR select_id IS NULL) order by id;
+WHERE select_id = 91 OR select_id IS NULL);
CONVERT(my_char_30 USING utf8) my_char_30 id
NULL NULL 1
2
@@ -2356,7 +2371,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS UNSIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL order by id;
+WHERE select_id = 90 OR select_id IS NULL;
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2368,7 +2383,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as unsigned) AS `CAST(my_year AS UNSIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 93 OR select_id IS NULL) order by id;
+WHERE select_id = 90 OR select_id IS NULL);
CAST(my_year AS UNSIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2382,37 +2397,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS UNSIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL order by id;
+WHERE select_id = 89 OR select_id IS NULL;
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as unsigned) AS `CAST(my_time AS UNSIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 92 OR select_id IS NULL) order by id;
+WHERE select_id = 89 OR select_id IS NULL);
CAST(my_time AS UNSIGNED INTEGER) my_time id
NULL NULL 1
-18446744073709550778 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1105 Cast to unsigned converted negative integer to it's positive complement
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+18446744073701165657 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2420,37 +2423,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS UNSIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL order by id;
+WHERE select_id = 88 OR select_id IS NULL;
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as unsigned) AS `CAST(my_timestamp AS UNSIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 91 OR select_id IS NULL) order by id;
+WHERE select_id = 88 OR select_id IS NULL);
CAST(my_timestamp AS UNSIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2458,35 +2449,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS UNSIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL order by id;
+WHERE select_id = 87 OR select_id IS NULL;
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as unsigned) AS `CAST(my_date AS UNSIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 90 OR select_id IS NULL) order by id;
+WHERE select_id = 87 OR select_id IS NULL);
CAST(my_date AS UNSIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2494,35 +2475,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS UNSIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL order by id;
+WHERE select_id = 86 OR select_id IS NULL;
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as unsigned) AS `CAST(my_datetime AS UNSIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 89 OR select_id IS NULL) order by id;
+WHERE select_id = 86 OR select_id IS NULL);
CAST(my_datetime AS UNSIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2530,7 +2501,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS UNSIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL order by id;
+WHERE select_id = 85 OR select_id IS NULL;
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2546,7 +2517,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as unsigned) AS `CAST(my_decimal AS UNSIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 88 OR select_id IS NULL) order by id;
+WHERE select_id = 85 OR select_id IS NULL);
CAST(my_decimal AS UNSIGNED INTEGER) my_decimal id
NULL NULL 1
0 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -2564,7 +2535,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS UNSIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL order by id;
+WHERE select_id = 84 OR select_id IS NULL;
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2576,7 +2547,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as unsigned) AS `CAST(my_bigint AS UNSIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 87 OR select_id IS NULL) order by id;
+WHERE select_id = 84 OR select_id IS NULL);
CAST(my_bigint AS UNSIGNED INTEGER) my_bigint id
NULL NULL 1
9223372036854775808 -9223372036854775808 2
@@ -2590,7 +2561,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS UNSIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL order by id;
+WHERE select_id = 83 OR select_id IS NULL;
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2607,7 +2578,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as unsigned) AS `CAST(my_varbinary_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 86 OR select_id IS NULL) order by id;
+WHERE select_id = 83 OR select_id IS NULL);
CAST(my_varbinary_1000 AS UNSIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -2626,7 +2597,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS UNSIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL order by id;
+WHERE select_id = 82 OR select_id IS NULL;
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2644,7 +2615,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as unsigned) AS `CAST(my_binary_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 85 OR select_id IS NULL) order by id;
+WHERE select_id = 82 OR select_id IS NULL);
CAST(my_binary_30 AS UNSIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -2664,7 +2635,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS UNSIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL order by id;
+WHERE select_id = 81 OR select_id IS NULL;
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2681,7 +2652,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as unsigned) AS `CAST(my_varchar_1000 AS UNSIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 84 OR select_id IS NULL) order by id;
+WHERE select_id = 81 OR select_id IS NULL);
CAST(my_varchar_1000 AS UNSIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -2700,7 +2671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS UNSIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL order by id;
+WHERE select_id = 80 OR select_id IS NULL;
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2717,7 +2688,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as unsigned) AS `CAST(my_char_30 AS UNSIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 83 OR select_id IS NULL) order by id;
+WHERE select_id = 80 OR select_id IS NULL);
CAST(my_char_30 AS UNSIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -2736,7 +2707,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values;
SELECT CAST(my_year AS SIGNED INTEGER),
my_year, id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL order by id;
+WHERE select_id = 79 OR select_id IS NULL;
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2748,7 +2719,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as signed) AS `CAST(my_year AS SIGNED INTEGER)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 82 OR select_id IS NULL) order by id;
+WHERE select_id = 79 OR select_id IS NULL);
CAST(my_year AS SIGNED INTEGER) my_year id
NULL NULL 1
1901 1901 2
@@ -2762,35 +2733,25 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values;
SELECT CAST(my_time AS SIGNED INTEGER),
my_time, id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL order by id;
+WHERE select_id = 78 OR select_id IS NULL;
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as signed) AS `CAST(my_time AS SIGNED INTEGER)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 81 OR select_id IS NULL) order by id;
+WHERE select_id = 78 OR select_id IS NULL);
CAST(my_time AS SIGNED INTEGER) my_time id
NULL NULL 1
--838 -838:59:59 2
-838 838:59:59 3
-13 13:00:00 4
-10 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '838:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '13:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '10:00:00'
+-8385959 -838:59:59 2
+8385959 838:59:59 3
+130000 13:00:00 4
+100000 10:00:00 5
DROP VIEW v1;
@@ -2798,37 +2759,25 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS SIGNED INTEGER),
my_timestamp, id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL order by id;
+WHERE select_id = 77 OR select_id IS NULL;
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as signed) AS `CAST(my_timestamp AS SIGNED INTEGER)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 80 OR select_id IS NULL) order by id;
+WHERE select_id = 77 OR select_id IS NULL);
CAST(my_timestamp AS SIGNED INTEGER) my_timestamp id
0 0000-00-00 00:00:00 1
-1970 1970-01-01 03:00:01 2
-2038 2038-01-01 02:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0000-00-00 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '1970-01-01 03:00:01'
-Warning 1292 Truncated incorrect INTEGER value: '2038-01-01 02:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+19700101030001 1970-01-01 03:00:01 2
+20380101025959 2038-01-01 02:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2836,35 +2785,25 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values;
SELECT CAST(my_date AS SIGNED INTEGER),
my_date, id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL order by id;
+WHERE select_id = 76 OR select_id IS NULL;
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as signed) AS `CAST(my_date AS SIGNED INTEGER)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 79 OR select_id IS NULL) order by id;
+WHERE select_id = 76 OR select_id IS NULL);
CAST(my_date AS SIGNED INTEGER) my_date id
NULL NULL 1
-1 0001-01-01 2
-9999 9999-12-31 3
-2004 2004-02-29 4
-2005 2005-06-28 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28'
+10101 0001-01-01 2
+99991231 9999-12-31 3
+20040229 2004-02-29 4
+20050628 2005-06-28 5
DROP VIEW v1;
@@ -2872,67 +2811,25 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS SIGNED INTEGER),
my_datetime, id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL order by id;
+WHERE select_id = 75 OR select_id IS NULL;
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as signed) AS `CAST(my_datetime AS SIGNED INTEGER)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 78 OR select_id IS NULL) order by id;
+WHERE select_id = 75 OR select_id IS NULL);
CAST(my_datetime AS SIGNED INTEGER) my_datetime id
NULL NULL 1
-1 0001-01-01 00:00:00 2
-9999 9999-12-31 23:59:59 3
-2004 2004-02-29 23:59:59 4
-2005 2005-06-28 10:00:00 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '0001-01-01 00:00:00'
-Warning 1292 Truncated incorrect INTEGER value: '9999-12-31 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2004-02-29 23:59:59'
-Warning 1292 Truncated incorrect INTEGER value: '2005-06-28 10:00:00'
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS SIGNED INTEGER),
-my_double, id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as signed) AS `CAST(my_double AS SIGNED INTEGER)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 77 OR select_id IS NULL) order by id;
-CAST(my_double AS SIGNED INTEGER) my_double id
-NULL NULL 1
--9223372036854775808 -1.7976931348623e+308 2
-9223372036854775807 1.7976931348623e+308 3
-0 0 4
--1 -1 5
-Warnings:
-Warning 1292 Truncated incorrect INTEGER value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect INTEGER value: '1.7976931348623e+308'
+10101000000 0001-01-01 00:00:00 2
+99991231235959 9999-12-31 23:59:59 3
+20040229235959 2004-02-29 23:59:59 4
+20050628100000 2005-06-28 10:00:00 5
DROP VIEW v1;
@@ -2940,11 +2837,11 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS SIGNED INTEGER),
my_decimal, id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL order by id;
+WHERE select_id = 74 OR select_id IS NULL;
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2955,11 +2852,11 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as signed) AS `CAST(my_decimal AS SIGNED INTEGER)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 76 OR select_id IS NULL) order by id;
+WHERE select_id = 74 OR select_id IS NULL);
CAST(my_decimal AS SIGNED INTEGER) my_decimal id
NULL NULL 1
--10000000000000000 -9999999999999999999999999999999999.999999999999999999999999999999 2
-10000000000000000 9999999999999999999999999999999999.999999999999999999999999999999 3
+-9223372036854775808 -9999999999999999999999999999999999.999999999999999999999999999999 2
+9223372036854775807 9999999999999999999999999999999999.999999999999999999999999999999 3
0 0.000000000000000000000000000000 4
-1 -1.000000000000000000000000000000 5
Warnings:
@@ -2972,7 +2869,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS SIGNED INTEGER),
my_bigint, id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL order by id;
+WHERE select_id = 73 OR select_id IS NULL;
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2984,7 +2881,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as signed) AS `CAST(my_bigint AS SIGNED INTEGER)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 75 OR select_id IS NULL) order by id;
+WHERE select_id = 73 OR select_id IS NULL);
CAST(my_bigint AS SIGNED INTEGER) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -2998,7 +2895,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS SIGNED INTEGER),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL order by id;
+WHERE select_id = 72 OR select_id IS NULL;
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3014,7 +2911,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as signed) AS `CAST(my_varbinary_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 74 OR select_id IS NULL) order by id;
+WHERE select_id = 72 OR select_id IS NULL);
CAST(my_varbinary_1000 AS SIGNED INTEGER) my_varbinary_1000 id
NULL NULL 1
0 2
@@ -3032,7 +2929,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS SIGNED INTEGER),
my_binary_30, id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL order by id;
+WHERE select_id = 71 OR select_id IS NULL;
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3049,7 +2946,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as signed) AS `CAST(my_binary_30 AS SIGNED INTEGER)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 73 OR select_id IS NULL) order by id;
+WHERE select_id = 71 OR select_id IS NULL);
CAST(my_binary_30 AS SIGNED INTEGER) my_binary_30 id
NULL NULL 1
0
@@ -3068,7 +2965,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS SIGNED INTEGER),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL order by id;
+WHERE select_id = 70 OR select_id IS NULL;
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3084,7 +2981,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as signed) AS `CAST(my_varchar_1000 AS SIGNED INTEGER)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 72 OR select_id IS NULL) order by id;
+WHERE select_id = 70 OR select_id IS NULL);
CAST(my_varchar_1000 AS SIGNED INTEGER) my_varchar_1000 id
NULL NULL 1
0 2
@@ -3102,7 +2999,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS SIGNED INTEGER),
my_char_30, id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL order by id;
+WHERE select_id = 69 OR select_id IS NULL;
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3118,7 +3015,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as signed) AS `CAST(my_char_30 AS SIGNED INTEGER)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 71 OR select_id IS NULL) order by id;
+WHERE select_id = 69 OR select_id IS NULL);
CAST(my_char_30 AS SIGNED INTEGER) my_char_30 id
NULL NULL 1
0 2
@@ -3132,287 +3029,217 @@ Warning 1292 Truncated incorrect INTEGER value: ' ---äÖüß@µ*$--'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values;
-SELECT CAST(my_year AS DECIMAL),
+SELECT CAST(my_year AS DECIMAL(37,2)),
my_year, id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL;
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal) AS `CAST(my_year AS DECIMAL)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as decimal(37,2)) AS `CAST(my_year AS DECIMAL(37,2))`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 70 OR select_id IS NULL) order by id;
-CAST(my_year AS DECIMAL) my_year id
+WHERE select_id = 68 OR select_id IS NULL);
+CAST(my_year AS DECIMAL(37,2)) my_year id
NULL NULL 1
-1901 1901 2
-2155 2155 3
-2000 2000 4
-2005 2005 5
+1901.00 1901 2
+2155.00 2155 3
+2000.00 2000 4
+2005.00 2005 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values;
-SELECT CAST(my_time AS DECIMAL),
+SELECT CAST(my_time AS DECIMAL(37,2)),
my_time, id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL;
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal) AS `CAST(my_time AS DECIMAL)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as decimal(37,2)) AS `CAST(my_time AS DECIMAL(37,2))`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 69 OR select_id IS NULL) order by id;
-CAST(my_time AS DECIMAL) my_time id
+WHERE select_id = 67 OR select_id IS NULL);
+CAST(my_time AS DECIMAL(37,2)) my_time id
NULL NULL 1
--8385959 -838:59:59 2
-8385959 838:59:59 3
-130000 13:00:00 4
-100000 10:00:00 5
+-8385959.00 -838:59:59 2
+8385959.00 838:59:59 3
+130000.00 13:00:00 4
+100000.00 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values;
-SELECT CAST(my_timestamp AS DECIMAL),
+SELECT CAST(my_timestamp AS DECIMAL(37,2)),
my_timestamp, id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL;
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal) AS `CAST(my_timestamp AS DECIMAL)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as decimal(37,2)) AS `CAST(my_timestamp AS DECIMAL(37,2))`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 68 OR select_id IS NULL) order by id;
-CAST(my_timestamp AS DECIMAL) my_timestamp id
-0 0000-00-00 00:00:00 1
-9999999999 1970-01-01 03:00:01 2
-9999999999 2038-01-01 02:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_timestamp AS DECIMAL)' at row 1
+WHERE select_id = 66 OR select_id IS NULL);
+CAST(my_timestamp AS DECIMAL(37,2)) my_timestamp id
+0.00 0000-00-00 00:00:00 1
+19700101030001.00 1970-01-01 03:00:01 2
+20380101025959.00 2038-01-01 02:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values;
-SELECT CAST(my_date AS DECIMAL),
+SELECT CAST(my_date AS DECIMAL(37,2)),
my_date, id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL;
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal) AS `CAST(my_date AS DECIMAL)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as decimal(37,2)) AS `CAST(my_date AS DECIMAL(37,2))`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 67 OR select_id IS NULL) order by id;
-CAST(my_date AS DECIMAL) my_date id
+WHERE select_id = 65 OR select_id IS NULL);
+CAST(my_date AS DECIMAL(37,2)) my_date id
NULL NULL 1
-10101 0001-01-01 2
-99991231 9999-12-31 3
-20040229 2004-02-29 4
-20050628 2005-06-28 5
+10101.00 0001-01-01 2
+99991231.00 9999-12-31 3
+20040229.00 2004-02-29 4
+20050628.00 2005-06-28 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values;
-SELECT CAST(my_datetime AS DECIMAL),
+SELECT CAST(my_datetime AS DECIMAL(37,2)),
my_datetime, id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
-NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal) AS `CAST(my_datetime AS DECIMAL)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 66 OR select_id IS NULL) order by id;
-CAST(my_datetime AS DECIMAL) my_datetime id
+WHERE select_id = 64 OR select_id IS NULL;
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
-9999999999 0001-01-01 00:00:00 2
-9999999999 9999-12-31 23:59:59 3
-9999999999 2004-02-29 23:59:59 4
-9999999999 2005-06-28 10:00:00 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_datetime AS DECIMAL)' at row 1
-DROP VIEW v1;
-
-
-CREATE VIEW v1 AS SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS DECIMAL),
-my_double, id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL order by id;
-CAST(my_double AS DECIMAL) my_double id
-NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as decimal) AS `CAST(my_double AS DECIMAL)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as decimal(37,2)) AS `CAST(my_datetime AS DECIMAL(37,2))`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 65 OR select_id IS NULL) order by id;
-CAST(my_double AS DECIMAL) my_double id
+WHERE select_id = 64 OR select_id IS NULL);
+CAST(my_datetime AS DECIMAL(37,2)) my_datetime id
NULL NULL 1
--9999999999 -1.7976931348623e+308 2
-9999999999 1.7976931348623e+308 3
-0 0 4
--1 -1 5
--3333 -3333.3333 30
-Warnings:
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
-Error 1292 Truncated incorrect DECIMAL value: ''
-Error 1264 Out of range value for column 'CAST(my_double AS DECIMAL)' at row 1
+10101000000.00 0001-01-01 00:00:00 2
+99991231235959.00 9999-12-31 23:59:59 3
+20040229235959.00 2004-02-29 23:59:59 4
+20050628100000.00 2005-06-28 10:00:00 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values;
-SELECT CAST(my_decimal AS DECIMAL),
+SELECT CAST(my_decimal AS DECIMAL(37,2)),
my_decimal, id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL;
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal) AS `CAST(my_decimal AS DECIMAL)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as decimal(37,2)) AS `CAST(my_decimal AS DECIMAL(37,2))`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 64 OR select_id IS NULL) order by id;
-CAST(my_decimal AS DECIMAL) my_decimal id
+WHERE select_id = 63 OR select_id IS NULL);
+CAST(my_decimal AS DECIMAL(37,2)) my_decimal id
NULL NULL 1
--9999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
-9999999999 9999999999999999999999999999999999.999999999999999999999999999999 3
-0 0.000000000000000000000000000000 4
--1 -1.000000000000000000000000000000 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_decimal AS DECIMAL)' at row 1
+-10000000000000000000000000000000000.00 -9999999999999999999999999999999999.999999999999999999999999999999 2
+10000000000000000000000000000000000.00 9999999999999999999999999999999999.999999999999999999999999999999 3
+0.00 0.000000000000000000000000000000 4
+-1.00 -1.000000000000000000000000000000 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values;
-SELECT CAST(my_bigint AS DECIMAL),
+SELECT CAST(my_bigint AS DECIMAL(37,2)),
my_bigint, id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL;
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal) AS `CAST(my_bigint AS DECIMAL)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as decimal(37,2)) AS `CAST(my_bigint AS DECIMAL(37,2))`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 63 OR select_id IS NULL) order by id;
-CAST(my_bigint AS DECIMAL) my_bigint id
+WHERE select_id = 62 OR select_id IS NULL);
+CAST(my_bigint AS DECIMAL(37,2)) my_bigint id
NULL NULL 1
--9999999999 -9223372036854775808 2
-9999999999 9223372036854775807 3
-0 0 4
--1 -1 5
-Warnings:
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
-Error 1264 Out of range value for column 'CAST(my_bigint AS DECIMAL)' at row 1
+-9223372036854775808.00 -9223372036854775808 2
+9223372036854775807.00 9223372036854775807 3
+0.00 0 4
+-1.00 -1 5
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values;
-SELECT CAST(my_varbinary_1000 AS DECIMAL),
+SELECT CAST(my_varbinary_1000 AS DECIMAL(37,2)),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+WHERE select_id = 61 OR select_id IS NULL;
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal) AS `CAST(my_varbinary_1000 AS DECIMAL)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as decimal(37,2)) AS `CAST(my_varbinary_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 62 OR select_id IS NULL) order by id;
-CAST(my_varbinary_1000 AS DECIMAL) my_varbinary_1000 id
+WHERE select_id = 61 OR select_id IS NULL);
+CAST(my_varbinary_1000 AS DECIMAL(37,2)) my_varbinary_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 29
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 28
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3420,18 +3247,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values;
-SELECT CAST(my_binary_30 AS DECIMAL),
+SELECT CAST(my_binary_30 AS DECIMAL(37,2)),
my_binary_30, id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
-NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+WHERE select_id = 60 OR select_id IS NULL;
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
+NULL NULL 1
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3443,17 +3270,17 @@ Warning 1292 Truncated incorrect DECIMAL value: '-1'
Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal) AS `CAST(my_binary_30 AS DECIMAL)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as decimal(37,2)) AS `CAST(my_binary_30 AS DECIMAL(37,2))`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 61 OR select_id IS NULL) order by id;
-CAST(my_binary_30 AS DECIMAL) my_binary_30 id
+WHERE select_id = 60 OR select_id IS NULL);
+CAST(my_binary_30 AS DECIMAL(37,2)) my_binary_30 id
NULL NULL 1
-0
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$--
--1 -1
--3333 -3333.3333
+0.00
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$--
+-1.00 -1
+-3333.33 -3333.3333
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ''
@@ -3466,35 +3293,35 @@ Warning 1292 Truncated incorrect DECIMAL value: '-3333.3333'
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values;
-SELECT CAST(my_varchar_1000 AS DECIMAL),
+SELECT CAST(my_varchar_1000 AS DECIMAL(37,2)),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
-NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+WHERE select_id = 59 OR select_id IS NULL;
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
+NULL NULL 1
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal) AS `CAST(my_varchar_1000 AS DECIMAL)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as decimal(37,2)) AS `CAST(my_varchar_1000 AS DECIMAL(37,2))`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 60 OR select_id IS NULL) order by id;
-CAST(my_varchar_1000 AS DECIMAL) my_varchar_1000 id
+WHERE select_id = 59 OR select_id IS NULL);
+CAST(my_varchar_1000 AS DECIMAL(37,2)) my_varchar_1000 id
NULL NULL 1
-0 2
-0 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 27
+0.00 2
+0.00 <---------1000 characters--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 26
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Error 1366 Incorrect decimal value: '' for column '' at row -1
@@ -3502,18 +3329,18 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL),
+CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values;
-SELECT CAST(my_char_30 AS DECIMAL),
+SELECT CAST(my_char_30 AS DECIMAL(37,2)),
my_char_30, id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
-NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+WHERE select_id = 58 OR select_id IS NULL;
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
+NULL NULL 1
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3523,17 +3350,17 @@ Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' ---äÖüß@µ*$-- '
SHOW CREATE VIEW v1;
View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal) AS `CAST(my_char_30 AS DECIMAL)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as decimal(37,2)) AS `CAST(my_char_30 AS DECIMAL(37,2))`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 59 OR select_id IS NULL) order by id;
-CAST(my_char_30 AS DECIMAL) my_char_30 id
+WHERE select_id = 58 OR select_id IS NULL);
+CAST(my_char_30 AS DECIMAL(37,2)) my_char_30 id
NULL NULL 1
-0 2
-0 <--------30 characters-------> 3
-0 ---äÖüß@µ*$-- 4
--1 -1 5
--3333 -3333.3333 26
+0.00 2
+0.00 <--------30 characters-------> 3
+0.00 ---äÖüß@µ*$-- 4
+-1.00 -1 5
+-3333.33 -3333.3333 25
Warnings:
Error 1366 Incorrect decimal value: '' for column '' at row -1
Warning 1292 Truncated incorrect DECIMAL value: ' '
@@ -3548,7 +3375,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS TIME),
my_year, id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL order by id;
+WHERE select_id = 57 OR select_id IS NULL;
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3560,7 +3387,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as time) AS `CAST(my_year AS TIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 58 OR select_id IS NULL) order by id;
+WHERE select_id = 57 OR select_id IS NULL);
CAST(my_year AS TIME) my_year id
NULL NULL 1
00:19:01 1901 2
@@ -3574,7 +3401,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS TIME),
my_time, id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL order by id;
+WHERE select_id = 56 OR select_id IS NULL;
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3586,7 +3413,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as time) AS `CAST(my_time AS TIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 57 OR select_id IS NULL) order by id;
+WHERE select_id = 56 OR select_id IS NULL);
CAST(my_time AS TIME) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -3600,7 +3427,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS TIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL order by id;
+WHERE select_id = 55 OR select_id IS NULL;
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3612,7 +3439,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as time) AS `CAST(my_timestamp AS TIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 56 OR select_id IS NULL) order by id;
+WHERE select_id = 55 OR select_id IS NULL);
CAST(my_timestamp AS TIME) my_timestamp id
00:00:00 0000-00-00 00:00:00 1
03:00:01 1970-01-01 03:00:01 2
@@ -3626,7 +3453,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS TIME),
my_date, id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL order by id;
+WHERE select_id = 54 OR select_id IS NULL;
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3638,7 +3465,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as time) AS `CAST(my_date AS TIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 55 OR select_id IS NULL) order by id;
+WHERE select_id = 54 OR select_id IS NULL);
CAST(my_date AS TIME) my_date id
NULL NULL 1
00:00:00 0001-01-01 2
@@ -3652,7 +3479,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS TIME),
my_datetime, id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL order by id;
+WHERE select_id = 53 OR select_id IS NULL;
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3664,7 +3491,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as time) AS `CAST(my_datetime AS TIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 54 OR select_id IS NULL) order by id;
+WHERE select_id = 53 OR select_id IS NULL);
CAST(my_datetime AS TIME) my_datetime id
NULL NULL 1
00:00:00 0001-01-01 00:00:00 2
@@ -3674,45 +3501,11 @@ NULL NULL 1
DROP VIEW v1;
-CREATE VIEW v1 AS SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values;
-SELECT CAST(my_double AS TIME),
-my_double, id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-SHOW CREATE VIEW v1;
-View Create View
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as time) AS `CAST(my_double AS TIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
-SELECT v1.* FROM v1
-WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 53 OR select_id IS NULL) order by id;
-CAST(my_double AS TIME) my_double id
-NULL NULL 1
-NULL -1.7976931348623e+308 2
-NULL 1.7976931348623e+308 3
-00:00:00 0 4
--00:00:01 -1 5
-00:17:58 1758 25
-Warnings:
-Warning 1292 Truncated incorrect time value: '-1.7976931348623e+308'
-Warning 1292 Truncated incorrect time value: '1.7976931348623e+308'
-DROP VIEW v1;
-
-
CREATE VIEW v1 AS SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS TIME),
my_bigint, id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL order by id;
+WHERE select_id = 52 OR select_id IS NULL;
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3728,7 +3521,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as time) AS `CAST(my_bigint AS TIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 52 OR select_id IS NULL) order by id;
+WHERE select_id = 52 OR select_id IS NULL);
CAST(my_bigint AS TIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -3746,7 +3539,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS TIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL order by id;
+WHERE select_id = 51 OR select_id IS NULL;
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3763,7 +3556,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as time) AS `CAST(my_varbinary_1000 AS TIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 51 OR select_id IS NULL) order by id;
+WHERE select_id = 51 OR select_id IS NULL);
CAST(my_varbinary_1000 AS TIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -3782,7 +3575,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS TIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL order by id;
+WHERE select_id = 50 OR select_id IS NULL;
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3801,7 +3594,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as time) AS `CAST(my_binary_30 AS TIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 50 OR select_id IS NULL) order by id;
+WHERE select_id = 50 OR select_id IS NULL);
CAST(my_binary_30 AS TIME) my_binary_30 id
NULL NULL 1
00:00:00
@@ -3822,7 +3615,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS TIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL order by id;
+WHERE select_id = 49 OR select_id IS NULL;
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3839,7 +3632,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as time) AS `CAST(my_varchar_1000 AS TIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 49 OR select_id IS NULL) order by id;
+WHERE select_id = 49 OR select_id IS NULL);
CAST(my_varchar_1000 AS TIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -3858,7 +3651,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS TIME),
my_char_30, id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL order by id;
+WHERE select_id = 48 OR select_id IS NULL;
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3875,7 +3668,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as time) AS `CAST(my_char_30 AS TIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 48 OR select_id IS NULL) order by id;
+WHERE select_id = 48 OR select_id IS NULL);
CAST(my_char_30 AS TIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -3894,7 +3687,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATETIME),
my_year, id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL order by id;
+WHERE select_id = 47 OR select_id IS NULL;
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3902,16 +3695,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as datetime) AS `CAST(my_year AS DATETIME)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 47 OR select_id IS NULL) order by id;
+WHERE select_id = 47 OR select_id IS NULL);
CAST(my_year AS DATETIME) my_year id
NULL NULL 1
NULL 1901 2
@@ -3919,10 +3712,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -3930,7 +3723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATETIME),
my_time, id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL order by id;
+WHERE select_id = 46 OR select_id IS NULL;
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3938,14 +3731,14 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as datetime) AS `CAST(my_time AS DATETIME)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 46 OR select_id IS NULL) order by id;
+WHERE select_id = 46 OR select_id IS NULL);
CAST(my_time AS DATETIME) my_time id
NULL NULL 1
0000-00-00 00:00:00 -838:59:59 2
@@ -3953,8 +3746,8 @@ NULL NULL 1
0000-00-00 13:00:00 13:00:00 4
0000-00-00 10:00:00 10:00:00 5
Warnings:
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
-Warning 1292 Incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
+Warning 1292 Truncated incorrect datetime value: '0000-00-00 838:59:59'
DROP VIEW v1;
@@ -3962,7 +3755,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATETIME),
my_timestamp, id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL order by id;
+WHERE select_id = 45 OR select_id IS NULL;
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3974,7 +3767,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as datetime) AS `CAST(my_timestamp AS DATETIME)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 45 OR select_id IS NULL) order by id;
+WHERE select_id = 45 OR select_id IS NULL);
CAST(my_timestamp AS DATETIME) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -3988,7 +3781,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATETIME),
my_date, id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL order by id;
+WHERE select_id = 44 OR select_id IS NULL;
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4000,7 +3793,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as datetime) AS `CAST(my_date AS DATETIME)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 44 OR select_id IS NULL) order by id;
+WHERE select_id = 44 OR select_id IS NULL);
CAST(my_date AS DATETIME) my_date id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 2
@@ -4014,7 +3807,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATETIME),
my_datetime, id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL order by id;
+WHERE select_id = 43 OR select_id IS NULL;
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4026,7 +3819,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as datetime) AS `CAST(my_datetime AS DATETIME)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 43 OR select_id IS NULL) order by id;
+WHERE select_id = 43 OR select_id IS NULL);
CAST(my_datetime AS DATETIME) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4040,7 +3833,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATETIME),
my_double, id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL order by id;
+WHERE select_id = 42 OR select_id IS NULL;
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4049,17 +3842,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as datetime) AS `CAST(my_double AS DATETIME)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 42 OR select_id IS NULL) order by id;
+WHERE select_id = 42 OR select_id IS NULL);
CAST(my_double AS DATETIME) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4068,11 +3861,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 19
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4080,7 +3873,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATETIME),
my_bigint, id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL order by id;
+WHERE select_id = 41 OR select_id IS NULL;
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4089,17 +3882,17 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as datetime) AS `CAST(my_bigint AS DATETIME)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 41 OR select_id IS NULL) order by id;
+WHERE select_id = 41 OR select_id IS NULL);
CAST(my_bigint AS DATETIME) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4108,11 +3901,11 @@ NULL 0 4
NULL -1 5
NULL 200506271758 18
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
-Warning 1292 Incorrect datetime value: '200506271758'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '200506271758'
DROP VIEW v1;
@@ -4120,7 +3913,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATETIME),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL order by id;
+WHERE select_id = 40 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4129,16 +3922,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as datetime) AS `CAST(my_varbinary_1000 AS DATETIME)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 40 OR select_id IS NULL) order by id;
+WHERE select_id = 40 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATETIME) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4147,10 +3940,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 17
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4158,7 +3951,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATETIME),
my_binary_30, id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL order by id;
+WHERE select_id = 39 OR select_id IS NULL;
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4167,17 +3960,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as datetime) AS `CAST(my_binary_30 AS DATETIME)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 39 OR select_id IS NULL) order by id;
+WHERE select_id = 39 OR select_id IS NULL);
CAST(my_binary_30 AS DATETIME) my_binary_30 id
NULL NULL 1
NULL
@@ -4186,10 +3979,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 17:58:00 2005-06-27 17:58
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect datetime value: '2005-06-27 17:58'
DROP VIEW v1;
@@ -4198,7 +3991,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATETIME),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL order by id;
+WHERE select_id = 38 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4207,16 +4000,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as datetime) AS `CAST(my_varchar_1000 AS DATETIME)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 38 OR select_id IS NULL) order by id;
+WHERE select_id = 38 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATETIME) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4225,10 +4018,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 15
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4236,7 +4029,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATETIME),
my_char_30, id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL order by id;
+WHERE select_id = 37 OR select_id IS NULL;
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4245,16 +4038,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as datetime) AS `CAST(my_char_30 AS DATETIME)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 37 OR select_id IS NULL) order by id;
+WHERE select_id = 37 OR select_id IS NULL);
CAST(my_char_30 AS DATETIME) my_char_30 id
NULL NULL 1
NULL 2
@@ -4263,10 +4056,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 17:58:00 2005-06-27 17:58 14
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4274,7 +4067,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values;
SELECT CAST(my_year AS DATE),
my_year, id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL order by id;
+WHERE select_id = 36 OR select_id IS NULL;
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4282,16 +4075,16 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as date) AS `CAST(my_year AS DATE)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 36 OR select_id IS NULL) order by id;
+WHERE select_id = 36 OR select_id IS NULL);
CAST(my_year AS DATE) my_year id
NULL NULL 1
NULL 1901 2
@@ -4299,10 +4092,10 @@ NULL 2155 3
NULL 2000 4
NULL 2005 5
Warnings:
-Warning 1292 Incorrect datetime value: '1901'
-Warning 1292 Incorrect datetime value: '2155'
-Warning 1292 Incorrect datetime value: '2000'
-Warning 1292 Incorrect datetime value: '2005'
+Warning 1292 Truncated incorrect datetime value: '1901'
+Warning 1292 Truncated incorrect datetime value: '2155'
+Warning 1292 Truncated incorrect datetime value: '2000'
+Warning 1292 Truncated incorrect datetime value: '2005'
DROP VIEW v1;
@@ -4310,7 +4103,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values;
SELECT CAST(my_time AS DATE),
my_time, id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL order by id;
+WHERE select_id = 35 OR select_id IS NULL;
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4322,7 +4115,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as date) AS `CAST(my_time AS DATE)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 35 OR select_id IS NULL) order by id;
+WHERE select_id = 35 OR select_id IS NULL);
CAST(my_time AS DATE) my_time id
NULL NULL 1
0000-00-00 -838:59:59 2
@@ -4336,7 +4129,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS DATE),
my_timestamp, id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL order by id;
+WHERE select_id = 34 OR select_id IS NULL;
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4348,7 +4141,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as date) AS `CAST(my_timestamp AS DATE)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 34 OR select_id IS NULL) order by id;
+WHERE select_id = 34 OR select_id IS NULL);
CAST(my_timestamp AS DATE) my_timestamp id
0000-00-00 0000-00-00 00:00:00 1
1970-01-01 1970-01-01 03:00:01 2
@@ -4362,7 +4155,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values;
SELECT CAST(my_date AS DATE),
my_date, id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL order by id;
+WHERE select_id = 33 OR select_id IS NULL;
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4374,7 +4167,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as date) AS `CAST(my_date AS DATE)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 33 OR select_id IS NULL) order by id;
+WHERE select_id = 33 OR select_id IS NULL);
CAST(my_date AS DATE) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4388,7 +4181,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS DATE),
my_datetime, id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL order by id;
+WHERE select_id = 32 OR select_id IS NULL;
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4400,7 +4193,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as date) AS `CAST(my_datetime AS DATE)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 32 OR select_id IS NULL) order by id;
+WHERE select_id = 32 OR select_id IS NULL);
CAST(my_datetime AS DATE) my_datetime id
NULL NULL 1
0001-01-01 0001-01-01 00:00:00 2
@@ -4414,7 +4207,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values;
SELECT CAST(my_double AS DATE),
my_double, id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL order by id;
+WHERE select_id = 31 OR select_id IS NULL;
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4423,16 +4216,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as date) AS `CAST(my_double AS DATE)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 31 OR select_id IS NULL) order by id;
+WHERE select_id = 31 OR select_id IS NULL);
CAST(my_double AS DATE) my_double id
NULL NULL 1
NULL -1.7976931348623e+308 2
@@ -4441,10 +4234,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 13
Warnings:
-Warning 1292 Incorrect datetime value: '-1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '1.7976931348623e+308'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '1.7976931348623e+308'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4452,7 +4245,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS DATE),
my_bigint, id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL order by id;
+WHERE select_id = 30 OR select_id IS NULL;
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4461,16 +4254,16 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as date) AS `CAST(my_bigint AS DATE)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 30 OR select_id IS NULL) order by id;
+WHERE select_id = 30 OR select_id IS NULL);
CAST(my_bigint AS DATE) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -4479,10 +4272,10 @@ NULL 0 4
NULL -1 5
2005-06-27 20050627 12
Warnings:
-Warning 1292 Incorrect datetime value: '-9223372036854775808'
-Warning 1292 Incorrect datetime value: '9223372036854775807'
-Warning 1292 Incorrect datetime value: '0'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: '-9223372036854775808'
+Warning 1292 Truncated incorrect datetime value: '9223372036854775807'
+Warning 1292 Truncated incorrect datetime value: '0'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4490,7 +4283,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS DATE),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL order by id;
+WHERE select_id = 29 OR select_id IS NULL;
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4499,16 +4292,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as date) AS `CAST(my_varbinary_1000 AS DATE)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 29 OR select_id IS NULL) order by id;
+WHERE select_id = 29 OR select_id IS NULL);
CAST(my_varbinary_1000 AS DATE) my_varbinary_1000 id
NULL NULL 1
NULL 2
@@ -4517,10 +4310,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 11
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4528,7 +4321,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS DATE),
my_binary_30, id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL order by id;
+WHERE select_id = 28 OR select_id IS NULL;
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4537,17 +4330,17 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as date) AS `CAST(my_binary_30 AS DATE)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 28 OR select_id IS NULL) order by id;
+WHERE select_id = 28 OR select_id IS NULL);
CAST(my_binary_30 AS DATE) my_binary_30 id
NULL NULL 1
NULL
@@ -4556,10 +4349,10 @@ NULL ---äÖüß@µ*$--
NULL -1
2005-06-27 2005-06-27
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
Warning 1292 Truncated incorrect date value: '2005-06-27'
DROP VIEW v1;
@@ -4568,7 +4361,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS DATE),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL order by id;
+WHERE select_id = 27 OR select_id IS NULL;
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4577,16 +4370,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as date) AS `CAST(my_varchar_1000 AS DATE)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 27 OR select_id IS NULL) order by id;
+WHERE select_id = 27 OR select_id IS NULL);
CAST(my_varchar_1000 AS DATE) my_varchar_1000 id
NULL NULL 1
NULL 2
@@ -4595,10 +4388,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 9
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$-- '
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<---------1000 characters-------------------------------------------------------------------------------------------------------'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$-- '
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4606,7 +4399,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS DATE),
my_char_30, id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL order by id;
+WHERE select_id = 26 OR select_id IS NULL;
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4615,16 +4408,16 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
SHOW CREATE VIEW v1;
View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as date) AS `CAST(my_char_30 AS DATE)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 26 OR select_id IS NULL) order by id;
+WHERE select_id = 26 OR select_id IS NULL);
CAST(my_char_30 AS DATE) my_char_30 id
NULL NULL 1
NULL 2
@@ -4633,10 +4426,10 @@ NULL ---äÖüß@µ*$-- 4
NULL -1 5
2005-06-27 2005-06-27 8
Warnings:
-Warning 1292 Incorrect datetime value: ''
-Warning 1292 Incorrect datetime value: '<--------30 characters------->'
-Warning 1292 Incorrect datetime value: ' ---äÖüß@µ*$--'
-Warning 1292 Incorrect datetime value: '-1'
+Warning 1292 Truncated incorrect datetime value: ''
+Warning 1292 Truncated incorrect datetime value: '<--------30 characters------->'
+Warning 1292 Truncated incorrect datetime value: ' ---äÖüß@µ*$--'
+Warning 1292 Truncated incorrect datetime value: '-1'
DROP VIEW v1;
@@ -4644,7 +4437,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values;
SELECT CAST(my_year AS CHAR),
my_year, id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL order by id;
+WHERE select_id = 25 OR select_id IS NULL;
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4656,7 +4449,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset latin1) AS `CAST(my_year AS CHAR)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 25 OR select_id IS NULL) order by id;
+WHERE select_id = 25 OR select_id IS NULL);
CAST(my_year AS CHAR) my_year id
NULL NULL 1
1901 1901 2
@@ -4670,7 +4463,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values;
SELECT CAST(my_time AS CHAR),
my_time, id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL order by id;
+WHERE select_id = 24 OR select_id IS NULL;
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4682,7 +4475,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset latin1) AS `CAST(my_time AS CHAR)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 24 OR select_id IS NULL) order by id;
+WHERE select_id = 24 OR select_id IS NULL);
CAST(my_time AS CHAR) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4696,7 +4489,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS CHAR),
my_timestamp, id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL order by id;
+WHERE select_id = 23 OR select_id IS NULL;
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4708,7 +4501,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset latin1) AS `CAST(my_timestamp AS CHAR)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 23 OR select_id IS NULL) order by id;
+WHERE select_id = 23 OR select_id IS NULL);
CAST(my_timestamp AS CHAR) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -4722,7 +4515,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values;
SELECT CAST(my_date AS CHAR),
my_date, id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL order by id;
+WHERE select_id = 22 OR select_id IS NULL;
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4734,7 +4527,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset latin1) AS `CAST(my_date AS CHAR)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 22 OR select_id IS NULL) order by id;
+WHERE select_id = 22 OR select_id IS NULL);
CAST(my_date AS CHAR) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -4748,7 +4541,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS CHAR),
my_datetime, id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL order by id;
+WHERE select_id = 21 OR select_id IS NULL;
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4760,7 +4553,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset latin1) AS `CAST(my_datetime AS CHAR)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 21 OR select_id IS NULL) order by id;
+WHERE select_id = 21 OR select_id IS NULL);
CAST(my_datetime AS CHAR) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -4774,7 +4567,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values;
SELECT CAST(my_double AS CHAR),
my_double, id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL order by id;
+WHERE select_id = 20 OR select_id IS NULL;
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4786,7 +4579,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset latin1) AS `CAST(my_double AS CHAR)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 20 OR select_id IS NULL) order by id;
+WHERE select_id = 20 OR select_id IS NULL);
CAST(my_double AS CHAR) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -4800,7 +4593,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS CHAR),
my_decimal, id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL order by id;
+WHERE select_id = 19 OR select_id IS NULL;
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4812,7 +4605,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset latin1) AS `CAST(my_decimal AS CHAR)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 19 OR select_id IS NULL) order by id;
+WHERE select_id = 19 OR select_id IS NULL);
CAST(my_decimal AS CHAR) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -4826,7 +4619,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS CHAR),
my_bigint, id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL order by id;
+WHERE select_id = 18 OR select_id IS NULL;
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4838,7 +4631,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset latin1) AS `CAST(my_bigint AS CHAR)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 18 OR select_id IS NULL) order by id;
+WHERE select_id = 18 OR select_id IS NULL);
CAST(my_bigint AS CHAR) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -4852,7 +4645,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS CHAR),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL order by id;
+WHERE select_id = 17 OR select_id IS NULL;
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4864,7 +4657,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset latin1) AS `CAST(my_varbinary_1000 AS CHAR)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 17 OR select_id IS NULL) order by id;
+WHERE select_id = 17 OR select_id IS NULL);
CAST(my_varbinary_1000 AS CHAR) my_varbinary_1000 id
NULL NULL 1
2
@@ -4878,7 +4671,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS CHAR),
my_binary_30, id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL order by id;
+WHERE select_id = 16 OR select_id IS NULL;
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4890,7 +4683,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset latin1) AS `CAST(my_binary_30 AS CHAR)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 16 OR select_id IS NULL) order by id;
+WHERE select_id = 16 OR select_id IS NULL);
CAST(my_binary_30 AS CHAR) my_binary_30 id
NULL NULL 1
@@ -4904,7 +4697,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS CHAR),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL order by id;
+WHERE select_id = 15 OR select_id IS NULL;
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4916,7 +4709,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset latin1) AS `CAST(my_varchar_1000 AS CHAR)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 15 OR select_id IS NULL) order by id;
+WHERE select_id = 15 OR select_id IS NULL);
CAST(my_varchar_1000 AS CHAR) my_varchar_1000 id
NULL NULL 1
2
@@ -4930,7 +4723,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS CHAR),
my_char_30, id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL order by id;
+WHERE select_id = 14 OR select_id IS NULL;
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4942,7 +4735,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset latin1) AS `CAST(my_char_30 AS CHAR)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 14 OR select_id IS NULL) order by id;
+WHERE select_id = 14 OR select_id IS NULL);
CAST(my_char_30 AS CHAR) my_char_30 id
NULL NULL 1
2
@@ -4956,7 +4749,7 @@ CREATE VIEW v1 AS SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values;
SELECT CAST(my_year AS BINARY),
my_year, id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL order by id;
+WHERE select_id = 13 OR select_id IS NULL;
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4968,7 +4761,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_year` as char charset binary) AS `CAST(my_year AS BINARY)`,`t1_values`.`my_year` AS `my_year`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 13 OR select_id IS NULL) order by id;
+WHERE select_id = 13 OR select_id IS NULL);
CAST(my_year AS BINARY) my_year id
NULL NULL 1
1901 1901 2
@@ -4982,7 +4775,7 @@ CREATE VIEW v1 AS SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values;
SELECT CAST(my_time AS BINARY),
my_time, id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL order by id;
+WHERE select_id = 12 OR select_id IS NULL;
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -4994,7 +4787,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_time` as char charset binary) AS `CAST(my_time AS BINARY)`,`t1_values`.`my_time` AS `my_time`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 12 OR select_id IS NULL) order by id;
+WHERE select_id = 12 OR select_id IS NULL);
CAST(my_time AS BINARY) my_time id
NULL NULL 1
-838:59:59 -838:59:59 2
@@ -5008,7 +4801,7 @@ CREATE VIEW v1 AS SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values;
SELECT CAST(my_timestamp AS BINARY),
my_timestamp, id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL order by id;
+WHERE select_id = 11 OR select_id IS NULL;
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5020,7 +4813,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_timestamp` as char charset binary) AS `CAST(my_timestamp AS BINARY)`,`t1_values`.`my_timestamp` AS `my_timestamp`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 11 OR select_id IS NULL) order by id;
+WHERE select_id = 11 OR select_id IS NULL);
CAST(my_timestamp AS BINARY) my_timestamp id
0000-00-00 00:00:00 0000-00-00 00:00:00 1
1970-01-01 03:00:01 1970-01-01 03:00:01 2
@@ -5034,7 +4827,7 @@ CREATE VIEW v1 AS SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values;
SELECT CAST(my_date AS BINARY),
my_date, id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL order by id;
+WHERE select_id = 10 OR select_id IS NULL;
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5046,7 +4839,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_date` as char charset binary) AS `CAST(my_date AS BINARY)`,`t1_values`.`my_date` AS `my_date`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 10 OR select_id IS NULL) order by id;
+WHERE select_id = 10 OR select_id IS NULL);
CAST(my_date AS BINARY) my_date id
NULL NULL 1
0001-01-01 0001-01-01 2
@@ -5060,7 +4853,7 @@ CREATE VIEW v1 AS SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values;
SELECT CAST(my_datetime AS BINARY),
my_datetime, id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL order by id;
+WHERE select_id = 9 OR select_id IS NULL;
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5072,7 +4865,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_datetime` as char charset binary) AS `CAST(my_datetime AS BINARY)`,`t1_values`.`my_datetime` AS `my_datetime`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 9 OR select_id IS NULL) order by id;
+WHERE select_id = 9 OR select_id IS NULL);
CAST(my_datetime AS BINARY) my_datetime id
NULL NULL 1
0001-01-01 00:00:00 0001-01-01 00:00:00 2
@@ -5086,7 +4879,7 @@ CREATE VIEW v1 AS SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values;
SELECT CAST(my_double AS BINARY),
my_double, id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL order by id;
+WHERE select_id = 8 OR select_id IS NULL;
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5098,7 +4891,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_double` as char charset binary) AS `CAST(my_double AS BINARY)`,`t1_values`.`my_double` AS `my_double`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 8 OR select_id IS NULL) order by id;
+WHERE select_id = 8 OR select_id IS NULL);
CAST(my_double AS BINARY) my_double id
NULL NULL 1
-1.7976931348623e+308 -1.7976931348623e+308 2
@@ -5112,7 +4905,7 @@ CREATE VIEW v1 AS SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values;
SELECT CAST(my_decimal AS BINARY),
my_decimal, id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL order by id;
+WHERE select_id = 7 OR select_id IS NULL;
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5124,7 +4917,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_decimal` as char charset binary) AS `CAST(my_decimal AS BINARY)`,`t1_values`.`my_decimal` AS `my_decimal`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 7 OR select_id IS NULL) order by id;
+WHERE select_id = 7 OR select_id IS NULL);
CAST(my_decimal AS BINARY) my_decimal id
NULL NULL 1
-9999999999999999999999999999999999.999999999999999999999999999999 -9999999999999999999999999999999999.999999999999999999999999999999 2
@@ -5138,7 +4931,7 @@ CREATE VIEW v1 AS SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values;
SELECT CAST(my_bigint AS BINARY),
my_bigint, id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL order by id;
+WHERE select_id = 6 OR select_id IS NULL;
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5150,7 +4943,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_bigint` as char charset binary) AS `CAST(my_bigint AS BINARY)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 6 OR select_id IS NULL) order by id;
+WHERE select_id = 6 OR select_id IS NULL);
CAST(my_bigint AS BINARY) my_bigint id
NULL NULL 1
-9223372036854775808 -9223372036854775808 2
@@ -5164,7 +4957,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values;
SELECT CAST(my_varbinary_1000 AS BINARY),
my_varbinary_1000, id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL order by id;
+WHERE select_id = 5 OR select_id IS NULL;
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5176,7 +4969,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varbinary_1000` as char charset binary) AS `CAST(my_varbinary_1000 AS BINARY)`,`t1_values`.`my_varbinary_1000` AS `my_varbinary_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 5 OR select_id IS NULL) order by id;
+WHERE select_id = 5 OR select_id IS NULL);
CAST(my_varbinary_1000 AS BINARY) my_varbinary_1000 id
NULL NULL 1
2
@@ -5190,7 +4983,7 @@ CREATE VIEW v1 AS SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values;
SELECT CAST(my_binary_30 AS BINARY),
my_binary_30, id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL order by id;
+WHERE select_id = 4 OR select_id IS NULL;
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5202,7 +4995,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_binary_30` as char charset binary) AS `CAST(my_binary_30 AS BINARY)`,`t1_values`.`my_binary_30` AS `my_binary_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 4 OR select_id IS NULL) order by id;
+WHERE select_id = 4 OR select_id IS NULL);
CAST(my_binary_30 AS BINARY) my_binary_30 id
NULL NULL 1
@@ -5216,7 +5009,7 @@ CREATE VIEW v1 AS SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values;
SELECT CAST(my_varchar_1000 AS BINARY),
my_varchar_1000, id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL order by id;
+WHERE select_id = 3 OR select_id IS NULL;
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5228,7 +5021,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_varchar_1000` as char charset binary) AS `CAST(my_varchar_1000 AS BINARY)`,`t1_values`.`my_varchar_1000` AS `my_varchar_1000`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 3 OR select_id IS NULL) order by id;
+WHERE select_id = 3 OR select_id IS NULL);
CAST(my_varchar_1000 AS BINARY) my_varchar_1000 id
NULL NULL 1
2
@@ -5242,7 +5035,7 @@ CREATE VIEW v1 AS SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values;
SELECT CAST(my_char_30 AS BINARY),
my_char_30, id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL order by id;
+WHERE select_id = 2 OR select_id IS NULL;
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5254,7 +5047,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select cast(`t1_values`.`my_char_30` as char charset binary) AS `CAST(my_char_30 AS BINARY)`,`t1_values`.`my_char_30` AS `my_char_30`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 2 OR select_id IS NULL) order by id;
+WHERE select_id = 2 OR select_id IS NULL);
CAST(my_char_30 AS BINARY) my_char_30 id
NULL NULL 1
2
@@ -5266,7 +5059,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT sqrt(my_bigint), my_bigint, id FROM t1_values;
SELECT sqrt(my_bigint), my_bigint, id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL order by id;
+WHERE select_id = 1 OR select_id IS NULL;
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
@@ -5280,7 +5073,7 @@ View Create View
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select sqrt(`t1_values`.`my_bigint`) AS `sqrt(my_bigint)`,`t1_values`.`my_bigint` AS `my_bigint`,`t1_values`.`id` AS `id` from `t1_values`
SELECT v1.* FROM v1
WHERE v1.id IN (SELECT id FROM t1_values
-WHERE select_id = 1 OR select_id IS NULL) order by id;
+WHERE select_id = 1 OR select_id IS NULL);
sqrt(my_bigint) my_bigint id
NULL NULL 1
NULL -9223372036854775808 2
diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result
index b314b6c7f1a..b314b6c7f1a 100644..100755
--- a/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result
+++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_02.result
diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_03.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_03.result
index e20c32967e9..e20c32967e9 100644..100755
--- a/mysql-test/suite/funcs_1/r/myisam_storedproc_03.result
+++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_03.result
diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_07.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_07.result
index e4330211306..e4330211306 100644..100755
--- a/mysql-test/suite/funcs_1/r/myisam_storedproc_07.result
+++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_07.result
diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_08.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_08.result
index 4dda7ef69ae..4dda7ef69ae 100644..100755
--- a/mysql-test/suite/funcs_1/r/myisam_storedproc_08.result
+++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_08.result
diff --git a/mysql-test/suite/funcs_1/r/myisam_storedproc_10.result b/mysql-test/suite/funcs_1/r/myisam_storedproc_10.result
index f41d5d7d440..f41d5d7d440 100644..100755
--- a/mysql-test/suite/funcs_1/r/myisam_storedproc_10.result
+++ b/mysql-test/suite/funcs_1/r/myisam_storedproc_10.result
diff --git a/mysql-test/suite/funcs_1/r/myisam_trig_0102.result b/mysql-test/suite/funcs_1/r/myisam_trig_0102.result
index 4d9a6c64947..eb5ae2e5b92 100644
--- a/mysql-test/suite/funcs_1/r/myisam_trig_0102.result
+++ b/mysql-test/suite/funcs_1/r/myisam_trig_0102.result
@@ -242,7 +242,7 @@ create table t1 (f1 integer) engine = myisam;
use test;
CREATE TRIGGER trig_db.trg6_2 AFTER INSERT on tb3
for each row set @ret_trg6_2 = 5;
-ERROR HY000: Trigger in wrong schema
+ERROR 42S02: Table 'trig_db.tb3' doesn't exist
use trig_db;
CREATE TRIGGER trg6_3 AFTER INSERT on test.tb3
for each row set @ret_trg6_3 = 18;
diff --git a/mysql-test/suite/funcs_1/r/myisam_trig_08.result b/mysql-test/suite/funcs_1/r/myisam_trig_08.result
index 906aea070d9..4f350191099 100644
--- a/mysql-test/suite/funcs_1/r/myisam_trig_08.result
+++ b/mysql-test/suite/funcs_1/r/myisam_trig_08.result
@@ -492,9 +492,8 @@ BEGIN
WHILE @counter1 < new.f136
SET @counter1 = @counter1 + 1;
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 'WHILE @counter1 < new.f136
-SET @counter1 = @counter1 + 1;
-END' at line 3
+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 'SET @counter1 = @counter1 + 1;
+END' at line 4
delete from tb3 where f122='Test 3.5.8.5-while';
drop trigger trg7;
diff --git a/mysql-test/suite/funcs_1/r/myisam_views.result b/mysql-test/suite/funcs_1/r/myisam_views.result
index a3620575c8b..83af04dcd2c 100644
--- a/mysql-test/suite/funcs_1/r/myisam_views.result
+++ b/mysql-test/suite/funcs_1/r/myisam_views.result
@@ -1948,7 +1948,7 @@ f1 f2
2 two
4 four
INSERT INTO v1 VALUES(2,'two');
-ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
+ERROR 23000: Duplicate entry '2' for key 1
INSERT INTO v1 VALUES(3,'three');
affected rows: 1
INSERT INTO v1 VALUES(6,'six');
@@ -1967,7 +1967,7 @@ f1 f2
3 three
4 four
UPDATE v1 SET f1 = 2 WHERE f1 = 3;
-ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
+ERROR 23000: Duplicate entry '2' for key 1
UPDATE v1 SET f2 = 'number' WHERE f1 = 3;
affected rows: 1
info: Rows matched: 1 Changed: 1 Warnings: 0
@@ -2014,12 +2014,12 @@ DROP VIEW IF EXISTS test.v1;
CREATE TABLE t1 (f1 ENUM('A', 'B', 'C') NOT NULL, f2 INTEGER)
ENGINE = myisam;
INSERT INTO t1 VALUES ('A', 1);
-SELECT * FROM t1 order by f1, f2;
+SELECT * FROM t1;
f1 f2
A 1
CREATE VIEW v1 AS SELECT * FROM t1 WHERE f2 BETWEEN 1 AND 2
WITH CASCADED CHECK OPTION ;
-SELECT * FROM v1 order by f1, f2;
+SELECT * FROM v1;
f1 f2
A 1
UPDATE v1 SET f2 = 2 WHERE f2 = 1;
@@ -2027,7 +2027,7 @@ affected rows: 1
info: Rows matched: 1 Changed: 1 Warnings: 0
INSERT INTO v1 VALUES('B',2);
affected rows: 1
-SELECT * FROM v1 order by f1, f2;
+SELECT * FROM v1;
f1 f2
A 2
B 2
@@ -2035,7 +2035,7 @@ UPDATE v1 SET f2 = 4;
ERROR HY000: CHECK OPTION failed 'test.v1'
INSERT INTO v1 VALUES('B',3);
ERROR HY000: CHECK OPTION failed 'test.v1'
-SELECT * FROM v1 order by f1, f2;
+SELECT * FROM v1;
f1 f2
A 2
B 2
@@ -10224,7 +10224,8 @@ SHOW FIELDS FROM v1;
ERROR 42S02: Table 'test.v1' doesn't exist
CHECK TABLE v1;
Table Op Msg_type Msg_text
-test.v1 check error Table 'test.v1' doesn't exist
+test.v1 check Error Table 'test.v1' doesn't exist
+test.v1 check error Corrupt
DESCRIBE v1;
ERROR 42S02: Table 'test.v1' doesn't exist
EXPLAIN SELECT * FROM v1;
@@ -10575,7 +10576,7 @@ f1 f2 f3 f4
DELETE FROM t1;
INSERT INTO v1 SET f2 = 'ABC';
INSERT INTO v1 SET f2 = 'ABC';
-ERROR 23000: Duplicate entry '0' for key 'PRIMARY'
+ERROR 23000: Duplicate entry '0' for key 1
SELECT * from t1;
f1 f2 f3 f4
0 ABC NULL NULL
@@ -10644,7 +10645,7 @@ DROP VIEW v1;
CREATE VIEW v1 AS SELECT f2, f3 FROM t1;
INSERT INTO v1 SET f2 = 'ABC';
INSERT INTO v1 SET f2 = 'ABC';
-ERROR 23000: Duplicate entry '0' for key 'PRIMARY'
+ERROR 23000: Duplicate entry '0' for key 1
SELECT * from t1;
f1 f2 f3 f4
0 ABC NULL NULL
@@ -10979,11 +10980,11 @@ f1 bigint(20) YES NULL
f2 date YES NULL
f4 char(5) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11003,12 +11004,12 @@ f4x char(5) YES NULL
report char(10) YES NULL
DESCRIBE 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
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4x report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
0 NULL ABC t1 1
-SELECT * FROM v1 order by f1, report;
+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
ALTER TABLE t1 CHANGE COLUMN f4x f4 CHAR(5);
ALTER TABLE t1 CHANGE COLUMN f4 f4 CHAR(10);
@@ -11026,14 +11027,14 @@ f1 bigint(20) YES NULL
f2 date YES NULL
f4 char(10) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
0 NULL ABC t1 1
2 NULL <-- 10 --> t1 2
2 NULL <-- 10 --> v1 2
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11062,7 +11063,7 @@ f1 bigint(20) YES NULL
f2 date YES NULL
f4 char(8) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11071,7 +11072,7 @@ f1 f2 f4 report
2 NULL <-- 10 - v1 2
3 NULL <-- 10 - t1 3
3 NULL <-- 10 - v1 3
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11095,7 +11096,7 @@ f1 bigint(20) YES NULL
f2 date YES NULL
f4 varchar(20) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11106,7 +11107,7 @@ f1 f2 f4 report
3 NULL <-- 10 - v1 3
4 NULL <------ 20 --------> t1 4
4 NULL <------ 20 --------> v1 4
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11134,7 +11135,7 @@ f1 varchar(30) YES NULL
f2 date YES NULL
f4 varchar(20) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11147,7 +11148,7 @@ f1 f2 f4 report
4 NULL <------ 20 --------> v1 4
<------------- 30 -----------> NULL <------ 20 --------> t1 5
<------------- 30 -----------> NULL <------ 20 --------> v1 5
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11171,7 +11172,7 @@ f4 varchar(20) YES NULL
report char(10) YES NULL
DESCRIBE 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
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f4 report
-1 ABC t1 0
-1 ABC v1 0
@@ -11185,7 +11186,7 @@ f1 f4 report
<------------- 30 -----------> <------ 20 --------> t1 5
<------------- 30 -----------> <------ 20 --------> v1 5
ABC <------ 20 --------> t1 6
-SELECT * FROM v1 order by f1, report;
+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
ALTER TABLE t1 ADD COLUMN f2 DATE DEFAULT NULL;
INSERT INTO t1 SET f1 = 'ABC', f2 = '1500-12-04',
@@ -11204,7 +11205,7 @@ f1 varchar(30) YES NULL
f2 date YES NULL
f4 varchar(20) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f4 report f2
-1 ABC t1 0 NULL
-1 ABC v1 0 NULL
@@ -11220,7 +11221,7 @@ f1 f4 report f2
ABC <------ 20 --------> t1 6 NULL
ABC <------ 20 --------> t1 7 1500-12-04
ABC <------ 20 --------> v1 7 1500-12-04
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11254,7 +11255,7 @@ f1 varchar(30) YES NULL
f2 float YES NULL
f4 varchar(20) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f4 report f2
-1 ABC t1 0 NULL
-1 ABC v1 0 NULL
@@ -11269,10 +11270,10 @@ f1 f4 report f2
<------------- 30 -----------> <------ 20 --------> v1 5 NULL
ABC <------ 20 --------> t1 6 NULL
ABC <------ 20 --------> t1 7 NULL
-ABC <------ 20 --------> t1 8 -0.00033
ABC <------ 20 --------> v1 7 NULL
+ABC <------ 20 --------> t1 8 -0.00033
ABC <------ 20 --------> v1 8 -0.00033
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11287,8 +11288,8 @@ f1 f2 f4 report
<------------- 30 -----------> NULL <------ 20 --------> v1 5
ABC NULL <------ 20 --------> t1 6
ABC NULL <------ 20 --------> t1 7
-ABC -0.00033 <------ 20 --------> t1 8
ABC NULL <------ 20 --------> v1 7
+ABC -0.00033 <------ 20 --------> t1 8
ABC -0.00033 <------ 20 --------> v1 8
ALTER TABLE t1 ADD COLUMN f3 NUMERIC(7,2);
INSERT INTO t1 SET f1 = 'ABC', f2 = -3.3E-4,
@@ -11311,7 +11312,7 @@ f1 varchar(30) YES NULL
f2 float YES NULL
f4 varchar(20) YES NULL
report char(10) YES NULL
-SELECT * FROM t1 order by f1, report;
+SELECT * FROM t1;
f1 f4 report f2 f3
-1 ABC t1 0 NULL NULL
-1 ABC v1 0 NULL NULL
@@ -11326,12 +11327,12 @@ f1 f4 report f2 f3
<------------- 30 -----------> <------ 20 --------> v1 5 NULL NULL
ABC <------ 20 --------> t1 6 NULL NULL
ABC <------ 20 --------> t1 7 NULL NULL
-ABC <------ 20 --------> t1 8 -0.00033 NULL
-ABC <------ 20 --------> t1 9 -0.00033 -2.20
ABC <------ 20 --------> v1 7 NULL NULL
+ABC <------ 20 --------> t1 8 -0.00033 NULL
ABC <------ 20 --------> v1 8 -0.00033 NULL
+ABC <------ 20 --------> t1 9 -0.00033 -2.20
ABC <------ 20 --------> v1 9a -0.00033 NULL
-SELECT * FROM v1 order by f1, report;
+SELECT * FROM v1;
f1 f2 f4 report
-1 NULL ABC t1 0
-1 NULL ABC v1 0
@@ -11346,10 +11347,10 @@ f1 f2 f4 report
<------------- 30 -----------> NULL <------ 20 --------> v1 5
ABC NULL <------ 20 --------> t1 6
ABC NULL <------ 20 --------> t1 7
-ABC -0.00033 <------ 20 --------> t1 8
-ABC -0.00033 <------ 20 --------> t1 9
ABC NULL <------ 20 --------> v1 7
+ABC -0.00033 <------ 20 --------> t1 8
ABC -0.00033 <------ 20 --------> v1 8
+ABC -0.00033 <------ 20 --------> t1 9
ABC -0.00033 <------ 20 --------> v1 9a
DROP TABLE t1;
DROP VIEW v1;
@@ -11364,10 +11365,10 @@ DESCRIBE v1;
Field Type Null Key Default Extra
f1 char(10) YES NULL
my_sqrt double YES NULL
-SELECT * FROM t1 order by f1, f2;
+SELECT * FROM t1;
f1 f2
ABC 3
-SELECT * FROM v1 order by 2;
+SELECT * FROM v1;
f1 my_sqrt
ABC 1.7320508075689
ALTER TABLE t1 CHANGE COLUMN f2 f2 VARCHAR(30);
@@ -11380,21 +11381,21 @@ DESCRIBE v1;
Field Type Null Key Default Extra
f1 char(10) YES NULL
my_sqrt double YES NULL
-SELECT * FROM t1 order by f1, f2;
+SELECT * FROM t1;
f1 f2
ABC 3
ABC DEF
-SELECT * FROM v1 order by 2;
+SELECT * FROM v1;
f1 my_sqrt
-ABC 0
ABC 1.7320508075689
+ABC 0
SELECT SQRT('DEF');
SQRT('DEF')
0
Warnings:
Warning 1292 Truncated incorrect DOUBLE value: 'DEF'
CREATE VIEW v2 AS SELECT SQRT('DEF');
-SELECT * FROM v2 order by 1;
+SELECT * FROM v2;
SQRT('DEF')
0
Warnings:
@@ -11404,27 +11405,27 @@ DESCRIBE v2;
Field Type Null Key Default Extra
f1 char(10) YES NULL
my_sqrt double YES NULL
-SELECT * FROM v2 order by 2;
+SELECT * FROM v2;
f1 my_sqrt
-ABC 0
ABC 1.7320508075689
+ABC 0
CREATE TABLE t2 AS SELECT f1, SQRT(f2) my_sqrt FROM t1;
-SELECT * FROM t2 order by 2;
+SELECT * FROM t2;
f1 my_sqrt
-ABC 0
ABC 1.73205080756888
+ABC 0
DROP TABLE t2;
CREATE TABLE t2 AS SELECT * FROM v1;
-SELECT * FROM t2 order by 2;
+SELECT * FROM t2;
f1 my_sqrt
-ABC 0
ABC 1.73205080756888
+ABC 0
DROP TABLE t2;
CREATE TABLE t2 AS SELECT * FROM v2;
-SELECT * FROM t2 order by 2;
+SELECT * FROM t2;
f1 my_sqrt
-ABC 0
ABC 1.73205080756888
+ABC 0
DROP TABLE t1;
DROP TABLE t2;
DROP VIEW v1;
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_02.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_02.inc
index 2efc5a83663..2efc5a83663 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_02.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_02.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_03.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_03.inc
index 9ffa7d7f66c..9ffa7d7f66c 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_03.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_03.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_06.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_06.inc
index e2b9e846b97..e2b9e846b97 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_06.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_06.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_07.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_07.inc
index 74ef7f4fbed..74ef7f4fbed 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_07.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_07.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_08.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_08.inc
index 9a693c5b96f..9a693c5b96f 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_08.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_08.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_08_show.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_08_show.inc
index 962d9242675..962d9242675 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_08_show.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_08_show.inc
diff --git a/mysql-test/suite/funcs_1/storedproc/storedproc_10.inc b/mysql-test/suite/funcs_1/storedproc/storedproc_10.inc
index e69a95a724e..e69a95a724e 100644..100755
--- a/mysql-test/suite/funcs_1/storedproc/storedproc_10.inc
+++ b/mysql-test/suite/funcs_1/storedproc/storedproc_10.inc
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_02.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_02.test
index ace4d0cdc37..ace4d0cdc37 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_02.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_02.test
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_03.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_03.test
index 3d1d6134b6f..3d1d6134b6f 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_03.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_03.test
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_06.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_06.test
index ce061da2299..ce061da2299 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_06.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_06.test
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_07.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_07.test
index dd1396e982e..dd1396e982e 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_07.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_07.test
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_08.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_08.test
index c8c289c5f49..c8c289c5f49 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_08.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_08.test
diff --git a/mysql-test/suite/funcs_1/t/innodb_storedproc_10.test b/mysql-test/suite/funcs_1/t/innodb_storedproc_10.test
index 88a44a263d7..88a44a263d7 100644..100755
--- a/mysql-test/suite/funcs_1/t/innodb_storedproc_10.test
+++ b/mysql-test/suite/funcs_1/t/innodb_storedproc_10.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_02.test b/mysql-test/suite/funcs_1/t/memory_storedproc_02.test
index f92657ee665..f92657ee665 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_02.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_02.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_03.test b/mysql-test/suite/funcs_1/t/memory_storedproc_03.test
index 8a839b255e1..8a839b255e1 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_03.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_03.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_06.test b/mysql-test/suite/funcs_1/t/memory_storedproc_06.test
index 059528590b9..059528590b9 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_06.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_06.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_07.test b/mysql-test/suite/funcs_1/t/memory_storedproc_07.test
index 1d7cee3dbd6..1d7cee3dbd6 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_07.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_07.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_08.test b/mysql-test/suite/funcs_1/t/memory_storedproc_08.test
index 304be8c477a..304be8c477a 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_08.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_08.test
diff --git a/mysql-test/suite/funcs_1/t/memory_storedproc_10.test b/mysql-test/suite/funcs_1/t/memory_storedproc_10.test
index 13fbe99fabf..13fbe99fabf 100644..100755
--- a/mysql-test/suite/funcs_1/t/memory_storedproc_10.test
+++ b/mysql-test/suite/funcs_1/t/memory_storedproc_10.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_02.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_02.test
index 108b0fe5611..108b0fe5611 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_02.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_02.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_03.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_03.test
index b181e3ce7ab..b181e3ce7ab 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_03.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_03.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_06.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_06.test
index 81d3d24a01f..81d3d24a01f 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_06.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_06.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_07.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_07.test
index a02f2f544ee..a02f2f544ee 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_07.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_07.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_08.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_08.test
index 24e574fa9e2..24e574fa9e2 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_08.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_08.test
diff --git a/mysql-test/suite/funcs_1/t/myisam_storedproc_10.test b/mysql-test/suite/funcs_1/t/myisam_storedproc_10.test
index 6b4f6c21b62..6b4f6c21b62 100644..100755
--- a/mysql-test/suite/funcs_1/t/myisam_storedproc_10.test
+++ b/mysql-test/suite/funcs_1/t/myisam_storedproc_10.test
diff --git a/mysql-test/suite/funcs_1/triggers/triggers_0102.inc b/mysql-test/suite/funcs_1/triggers/triggers_0102.inc
index af94041d245..e8919a32ca7 100644
--- a/mysql-test/suite/funcs_1/triggers/triggers_0102.inc
+++ b/mysql-test/suite/funcs_1/triggers/triggers_0102.inc
@@ -273,7 +273,7 @@ let $message= Testcase 3.5.1.8:;
# Can't create a trigger in a different database
use test;
- --error 1435
+ --error 1146
CREATE TRIGGER trig_db.trg6_2 AFTER INSERT on tb3
for each row set @ret_trg6_2 = 5;
diff --git a/mysql-test/suite/funcs_1/views/func_view.inc b/mysql-test/suite/funcs_1/views/func_view.inc
index 3bf9e96b332..d78cfb4488a 100644
--- a/mysql-test/suite/funcs_1/views/func_view.inc
+++ b/mysql-test/suite/funcs_1/views/func_view.inc
@@ -606,7 +606,8 @@ let $col_type= my_year;
# 1.1.6. CAST --> DECIMAL
-let $target_type= DECIMAL;
+# Set the following to (37,2) since the default was changed to (10,0) - OBN
+let $target_type= DECIMAL(37,2);
#
let $col_type= my_char_30;
--source suite/funcs_1/views/fv_cast.inc
diff --git a/mysql-test/suite/row_lock/include/row_lock.inc b/mysql-test/suite/row_lock/include/row_lock.inc
deleted file mode 100644
index 8572bc0246e..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock.inc
+++ /dev/null
@@ -1,83 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-eval $indext2;
-COMMIT;
-SELECT @@global.tx_isolation;
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t1,t2 SET t1.i=223,t2.i=223 WHERE t1.i=123 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t1,t2 SET t1.i=224,t2.i=224 WHERE t1.i=124 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP TABLE t1, t2;
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_big_tab.inc b/mysql-test/suite/row_lock/include/row_lock_big_tab.inc
deleted file mode 100644
index f0823067eac..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_big_tab.inc
+++ /dev/null
@@ -1,94 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext2;
-DELIMITER |;
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT count(*)/2 INTO res FROM t1;
- RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT count(*)/2 INTO res FROM t2;
- RETURN res;
-END;
-|
-DELIMITER ;|
-CALL fill_t1 (10);
-CALL fill_t2 (10);
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-SELECT k from t1 WHERE k < half_t1();
-SELECT k from t1 WHERE k >= half_t1();
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k < half_t1() AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k >= half_t1() AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
-#DROP VIEW v1;
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc b/mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc
deleted file mode 100644
index 8535c016819..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc
+++ /dev/null
@@ -1,93 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext2;
-DELIMITER |;
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT MOD(k,2) INTO res FROM t1;
- RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT MOD(k,2) INTO res FROM t2;
- RETURN res;
-END;
-|
-DELIMITER ;|
-eval CALL fill_t1 ($nbrows);
-eval CALL fill_t2 ($nbrows);
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 1 AND t1.k = t2.k LOCK IN SHARE MODE;
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k % 2 = 1 AND t1.k = t2.k;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k % 2 = 0 AND t1.k = t2.k;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 WHERE k < 40 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 40 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 WHERE k < 40 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 40 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP TABLE t1, t2;
-
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc b/mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc
deleted file mode 100644
index 050f2a54016..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc
+++ /dev/null
@@ -1,93 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-eval $indext2;
-DELIMITER |;
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT MOD(k,2) INTO res FROM t1;
- RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
- INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
- SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
- DECLARE res int DEFAULT 0;
- SELECT MOD(k,2) INTO res FROM t2;
- RETURN res;
-END;
-|
-DELIMITER ;|
-eval CALL fill_t1 ($nbrows);
-eval CALL fill_t2 ($nbrows);
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-#SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 1 AND t1.k = t2.k FOR UPDATE;
-DELETE FROM t1 WHERE t1.k % 2 = 1;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k % 2 = 0 AND t1.k = t2.k;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 WHERE k < 40 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 40 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 WHERE k < 40 ORDER BY t1.k;
-SELECT * FROM t2 WHERE k < 40 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP TABLE t1, t2;
-
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_trig.inc b/mysql-test/suite/row_lock/include/row_lock_trig.inc
deleted file mode 100644
index 384f00f243e..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_trig.inc
+++ /dev/null
@@ -1,96 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-eval $indext2;
-DELIMITER |;
-
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
- FOR EACH ROW BEGIN
- UPDATE t1 SET l = NEW.i WHERE i = OLD.i;
- END;
-|
-
-DELIMITER ;|
-
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
---echo connection root1;
-CONNECTION root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP TABLE t1, t2;
-#DROP VIEW v1;
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_view.inc b/mysql-test/suite/row_lock/include/row_lock_view.inc
deleted file mode 100644
index fbed8f64d3a..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_view.inc
+++ /dev/null
@@ -1,89 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-eval $indext2;
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE v1 SET i=325 where i=125;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE v1 SET i=323 where i=123;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE v1 SET i=326 where i=126;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE v1 SET i=324 where i=124;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
-#DROP VIEW v1;
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_view_mix.inc b/mysql-test/suite/row_lock/include/row_lock_view_mix.inc
deleted file mode 100644
index 9e8cf3d34fc..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_view_mix.inc
+++ /dev/null
@@ -1,92 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-eval $indext2;
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-# With the two separate selects (without join) the differs from
-# that select with join.
-
-# Both transaction are able to update the tables
-eval EXPLAIN $select;
-eval $select;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-#UPDATE v1 SET i=325 where i=125;
-#SELECT * FROM v1 ORDER BY i,l;
-#SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE v1 SET i=323 where i=123;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE v1 SET i=324 where i=124;
-SELECT * FROM v1 ORDER BY i,l;
-SELECT * FROM t1 ORDER BY t1.k;
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
-#DROP VIEW v1;
-
diff --git a/mysql-test/suite/row_lock/include/row_lock_view_storedp.inc b/mysql-test/suite/row_lock/include/row_lock_view_storedp.inc
deleted file mode 100644
index 479392098be..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_view_storedp.inc
+++ /dev/null
@@ -1,126 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-DROP PROCEDURE IF EXISTS stp_t;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
-CONNECT (root2, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-INSERT INTO t1 VALUES (5,127,5,127);
-INSERT INTO t1 VALUES (6,128,6,128);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-INSERT INTO t2 VALUES (5,127,5,127);
-INSERT INTO t2 VALUES (6,128,6,128);
-eval $indext2;
-CREATE VIEW v1 AS SELECT t1.i from t1;
-DELIMITER |;
-
-CREATE PROCEDURE stp_t (IN p1 int, IN p2 int) MODIFIES SQL DATA
- BEGIN
- UPDATE t2 SET i = p2 WHERE i = p1;
- UPDATE v1 SET i = p2 WHERE i = p1;
- SELECT * FROM v1 ORDER BY i;
- SELECT * FROM t1 ORDER BY t1.k;
- SELECT * FROM t2 ORDER BY t2.k;
- END;
-|
-
-DELIMITER ;|
-
-COMMIT;
-SELECT @@global.tx_isolation;
-eval EXPLAIN $select;
-eval $select;
---echo connection root1;
-CONNECTION root1;
-CALL stp_t (125, 225);
-
---echo connection root2;
-CONNECTION root2;
-CALL stp_t (127, 227);
-
---echo connection default;
-CONNECTION default;
-CALL stp_t (123, 223);
-
---echo connection root1;
-CONNECTION root1;
-CALL stp_t (126, 226);
-
---echo connection root2;
-CONNECTION root2;
-CALL stp_t (128, 228);
-
---echo connection default;
-CONNECTION default;
-CALL stp_t (124, 224);
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root2;
-CONNECTION root2;
-DELETE FROM t1 WHERE t1.i=228;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection root1;
-CONNECTION root1;
-COMMIT;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
-
---echo connection root2;
-CONNECTION root2;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root2;
-
---echo connection default;
-CONNECTION default;
---disable_warnings
-DROP VIEW v1;
-DROP PROCEDURE stp_t;
-DROP TABLE t1, t2;
---enable_warnings
diff --git a/mysql-test/suite/row_lock/include/row_lock_view_trig.inc b/mysql-test/suite/row_lock/include/row_lock_view_trig.inc
deleted file mode 100644
index 785eb1b66a9..00000000000
--- a/mysql-test/suite/row_lock/include/row_lock_view_trig.inc
+++ /dev/null
@@ -1,99 +0,0 @@
---disable_warnings
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
---enable_warnings
-SET autocommit=0;
-# Create additional connections used through test
-CONNECT (root1, localhost, root,,);
-SET autocommit=0;
---echo connection default;
-CONNECTION default;
-eval CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-eval $indext1;
-eval CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=$engine;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-eval $indext2;
-CREATE VIEW v1 AS SELECT t1.i from t1;
-DELIMITER |;
-
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
- FOR EACH ROW BEGIN
- UPDATE v1 SET i = NEW.i WHERE i = OLD.i;
- END;
-|
-
-DELIMITER ;|
-
-COMMIT;
-SELECT @@global.tx_isolation;
-eval EXPLAIN $select;
-eval $select;
---echo connection root1;
-CONNECTION root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection default;
-CONNECTION default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-COMMIT;
-
---echo connection root1;
-CONNECTION root1;
-ROLLBACK;
-
---echo connection default;
-CONNECTION default;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-
---echo connection root1;
-CONNECTION root1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-DISCONNECT root1;
---echo connection default;
-CONNECTION default;
-DROP TABLE t1, t2;
-DROP VIEW v1;
-
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_1.result
deleted file mode 100644
index 54ed4350ba9..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_1.result
+++ /dev/null
@@ -1,142 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 2 Using where; Using index
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=223,t2.i=223 WHERE t1.i=123 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=224,t2.i=224 WHERE t1.i=124 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_2.result
deleted file mode 100644
index 56154e64489..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_2.result
+++ /dev/null
@@ -1,32 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_3.result b/mysql-test/suite/row_lock/r/innodb_row_lock_3.result
deleted file mode 100644
index a89c55973d2..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_3.result
+++ /dev/null
@@ -1,32 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_4.result b/mysql-test/suite/row_lock/r/innodb_row_lock_4.result
deleted file mode 100644
index 310d24a456a..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_4.result
+++ /dev/null
@@ -1,142 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 2 Using where; Using index
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=223,t2.i=223 WHERE t1.i=123 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=224,t2.i=224 WHERE t1.i=124 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_5.result b/mysql-test/suite/row_lock/r/innodb_row_lock_5.result
deleted file mode 100644
index ace5fddfad5..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_5.result
+++ /dev/null
@@ -1,32 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result b/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result
deleted file mode 100644
index 8f00c3a0bb7..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result
+++ /dev/null
@@ -1,97 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT count(*)/2 INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT count(*)/2 INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (10);
-CALL fill_t2 (10);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 10 Using where; Using index
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where; Using index
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-connection root1;
-SELECT k from t1 WHERE k < half_t1();
-k
-0
-1
-2
-3
-4
-SELECT k from t1 WHERE k >= half_t1();
-k
-5
-6
-7
-8
-9
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k < half_t1() AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-0 1111 0 100
-1 1111 1 101
-2 1111 2 102
-3 1111 3 103
-4 1111 4 104
-5 105 5 105
-6 106 6 106
-7 107 7 107
-8 108 8 108
-9 109 9 109
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-0 2222 0 100
-1 2222 1 101
-2 2222 2 102
-3 2222 3 103
-4 2222 4 104
-5 105 5 105
-6 106 6 106
-7 107 7 107
-8 108 8 108
-9 109 9 109
-connection default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k >= half_t1() AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result
deleted file mode 100644
index 0b12f149193..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result
+++ /dev/null
@@ -1,145 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (40);
-CALL fill_t2 (40);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY ixi 5 NULL 40 Using where; Using index
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.k 1
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-i i
-100 100
-102 102
-104 104
-106 106
-108 108
-110 110
-112 112
-114 114
-116 116
-118 118
-120 120
-122 122
-124 124
-126 126
-128 128
-130 130
-132 132
-134 134
-136 136
-138 138
-connection root1;
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 1 AND t1.k = t2.k LOCK IN SHARE MODE;
-i i
-101 101
-103 103
-105 105
-107 107
-109 109
-111 111
-113 113
-115 115
-117 117
-119 119
-121 121
-123 123
-125 125
-127 127
-129 129
-131 131
-133 133
-135 135
-137 137
-139 139
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k % 2 = 1 AND t1.k = t2.k;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-k i j l
-0 100 0 100
-1 1111 1 101
-2 102 2 102
-3 1111 3 103
-4 104 4 104
-5 1111 5 105
-6 106 6 106
-7 1111 7 107
-8 108 8 108
-9 1111 9 109
-10 110 10 110
-11 1111 11 111
-12 112 12 112
-13 1111 13 113
-14 114 14 114
-15 1111 15 115
-16 116 16 116
-17 1111 17 117
-18 118 18 118
-19 1111 19 119
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-k i j l
-0 100 0 100
-1 2222 1 101
-2 102 2 102
-3 2222 3 103
-4 104 4 104
-5 2222 5 105
-6 106 6 106
-7 2222 7 107
-8 108 8 108
-9 2222 9 109
-10 110 10 110
-11 2222 11 111
-12 112 12 112
-13 2222 13 113
-14 114 14 114
-15 2222 15 115
-16 116 16 116
-17 2222 17 117
-18 118 18 118
-19 2222 19 119
-connection default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k % 2 = 0 AND t1.k = t2.k;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result
deleted file mode 100644
index cc9f297f9fb..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result
+++ /dev/null
@@ -1,113 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (40);
-CALL fill_t2 (40);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY ixi 5 NULL 40 Using where; Using index
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.k 1
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-i i
-100 100
-102 102
-104 104
-106 106
-108 108
-110 110
-112 112
-114 114
-116 116
-118 118
-120 120
-122 122
-124 124
-126 126
-128 128
-130 130
-132 132
-134 134
-136 136
-138 138
-connection root1;
-DELETE FROM t1 WHERE t1.k % 2 = 1;
-SELECT * FROM t1 WHERE k < 20 ORDER BY t1.k;
-k i j l
-0 100 0 100
-2 102 2 102
-4 104 4 104
-6 106 6 106
-8 108 8 108
-10 110 10 110
-12 112 12 112
-14 114 14 114
-16 116 16 116
-18 118 18 118
-SELECT * FROM t2 WHERE k < 20 ORDER BY t2.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 105 5 105
-6 106 6 106
-7 107 7 107
-8 108 8 108
-9 109 9 109
-10 110 10 110
-11 111 11 111
-12 112 12 112
-13 113 13 113
-14 114 14 114
-15 115 15 115
-16 116 16 116
-17 117 17 117
-18 118 18 118
-19 119 19 119
-connection default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k % 2 = 0 AND t1.k = t2.k;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result
deleted file mode 100644
index dd43e5752e5..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result
+++ /dev/null
@@ -1,151 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE t1 SET l = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 226
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 226
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result
deleted file mode 100644
index cb3a5c692e9..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result
+++ /dev/null
@@ -1,37 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE t1 SET l = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result
deleted file mode 100644
index 834cb669833..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result
+++ /dev/null
@@ -1,34 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 2 Using where; Using index
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE v1 SET i=325 where i=125;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result
deleted file mode 100644
index 440138d4cd1..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result
+++ /dev/null
@@ -1,40 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 index NULL PRIMARY 4 NULL 4 Using index
-SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-i
-123
-124
-123
-124
-123
-124
-123
-124
-connection root1;
-UPDATE v1 SET i=325 where i=125;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result
deleted file mode 100644
index 230873b67a0..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result
+++ /dev/null
@@ -1,48 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 2 Using where; Using index
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE v1 SET i=323 where i=123;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result
deleted file mode 100644
index d792d573f8e..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result
+++ /dev/null
@@ -1,40 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-1 SIMPLE t2 index NULL PRIMARY 4 NULL 4 Using index
-SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-i
-123
-124
-123
-124
-123
-124
-123
-124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result
deleted file mode 100644
index 77b9a4dd964..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result
+++ /dev/null
@@ -1,312 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-INSERT INTO t1 VALUES (5,127,5,127);
-INSERT INTO t1 VALUES (6,128,6,128);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-INSERT INTO t2 VALUES (5,127,5,127);
-INSERT INTO t2 VALUES (6,128,6,128);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE PROCEDURE stp_t (IN p1 int, IN p2 int) MODIFIES SQL DATA
-BEGIN
-UPDATE t2 SET i = p2 WHERE i = p1;
-UPDATE v1 SET i = p2 WHERE i = p1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 6 Using where; Using index
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-CALL stp_t (125, 225);
-i
-123
-124
-126
-127
-128
-225
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-CALL stp_t (127, 227);
-i
-123
-124
-125
-126
-128
-227
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 128 6 128
-connection default;
-CALL stp_t (123, 223);
-i
-124
-125
-126
-127
-128
-223
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-CALL stp_t (126, 226);
-i
-123
-124
-127
-128
-225
-226
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-CALL stp_t (128, 228);
-i
-123
-124
-125
-126
-227
-228
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-CALL stp_t (124, 224);
-i
-125
-126
-127
-128
-223
-224
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-DELETE FROM t1 WHERE t1.i=228;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-COMMIT;
-connection root1;
-ROLLBACK;
-connection root1;
-COMMIT;
-connection default;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-127
-128
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-127
-128
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-SELECT * FROM v1 ORDER BY i;
-i
-123
-124
-125
-126
-227
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-DROP TABLE t1, t2;
-DROP VIEW v1;
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result
deleted file mode 100644
index 73d8a3f4bea..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result
+++ /dev/null
@@ -1,47 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-INSERT INTO t1 VALUES (5,127,5,127);
-INSERT INTO t1 VALUES (6,128,6,128);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-INSERT INTO t2 VALUES (5,127,5,127);
-INSERT INTO t2 VALUES (6,128,6,128);
-#CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE PROCEDURE stp_t (IN p1 int, IN p2 int) MODIFIES SQL DATA
-BEGIN
-UPDATE t2 SET i = p2 WHERE i = p1;
-UPDATE v1 SET i = p2 WHERE i = p1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-CALL stp_t (125, 225);
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result
deleted file mode 100644
index 90383a9489f..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result
+++ /dev/null
@@ -1,183 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE v1 SET i = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index ixi ixi 5 NULL 4 Using where; Using index
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM v1 ORDER BY i;
-i
-123
-124
-126
-225
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM v1 ORDER BY i;
-i
-124
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM v1 ORDER BY i;
-i
-123
-124
-225
-226
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-224
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
-DROP VIEW v1;
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result b/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result
deleted file mode 100644
index 55793558b21..00000000000
--- a/mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result
+++ /dev/null
@@ -1,38 +0,0 @@
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE v1 SET i = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_1.result
deleted file mode 100644
index 248c7d5ea1f..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_1.result
+++ /dev/null
@@ -1,139 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=223,t2.i=223 WHERE t1.i=123 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=224,t2.i=224 WHERE t1.i=124 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_2.result
deleted file mode 100644
index 109d99dd036..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_2.result
+++ /dev/null
@@ -1,31 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_3.result b/mysql-test/suite/row_lock/r/ndb_row_lock_3.result
deleted file mode 100644
index c936ea209ff..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_3.result
+++ /dev/null
@@ -1,30 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_4.result b/mysql-test/suite/row_lock/r/ndb_row_lock_4.result
deleted file mode 100644
index 875c783bd81..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_4.result
+++ /dev/null
@@ -1,139 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=223,t2.i=223 WHERE t1.i=123 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t1,t2 SET t1.i=224,t2.i=224 WHERE t1.i=124 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_5.result b/mysql-test/suite/row_lock/r/ndb_row_lock_5.result
deleted file mode 100644
index 0d94f8abf72..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_5.result
+++ /dev/null
@@ -1,30 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result b/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result
deleted file mode 100644
index 94b67c63d94..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result
+++ /dev/null
@@ -1,177 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT count(*)/2 INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT count(*)/2 INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (10);
-CALL fill_t2 (10);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-i i
-connection root1;
-SELECT k from t1 WHERE k < half_t1();
-k
-0
-3
-1
-2
-4
-SELECT k from t1 WHERE k >= half_t1();
-k
-6
-7
-9
-5
-8
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k < half_t1() AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-0 1111 0 100
-1 1111 1 101
-2 1111 2 102
-3 1111 3 103
-4 1111 4 104
-5 105 5 105
-6 106 6 106
-7 107 7 107
-8 108 8 108
-9 109 9 109
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-0 2222 0 100
-1 2222 1 101
-2 2222 2 102
-3 2222 3 103
-4 2222 4 104
-5 105 5 105
-6 106 6 106
-7 107 7 107
-8 108 8 108
-9 109 9 109
-connection default;
-UPDATE t1,t2 SET t1.i=3333,t2.i=4444 WHERE t1.k >= half_t1() AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 3333 5 105
-6 3333 6 106
-7 3333 7 107
-8 3333 8 108
-9 3333 9 109
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 4444 5 105
-6 4444 6 106
-7 4444 7 107
-8 4444 8 108
-9 4444 9 109
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 3333 5 105
-6 3333 6 106
-7 3333 7 107
-8 3333 8 108
-9 3333 9 109
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 4444 5 105
-6 4444 6 106
-7 4444 7 107
-8 4444 8 108
-9 4444 9 109
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 3333 5 105
-6 3333 6 106
-7 3333 7 107
-8 3333 8 108
-9 3333 9 109
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-0 100 0 100
-1 101 1 101
-2 102 2 102
-3 103 3 103
-4 104 4 104
-5 4444 5 105
-6 4444 6 106
-7 4444 7 107
-8 4444 8 108
-9 4444 9 109
-connection default;
-DROP VIEW IF EXISTS v1;
-Warnings:
-Note 1051 Unknown table 'test.v1'
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result
deleted file mode 100644
index 9803895e1a7..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result
+++ /dev/null
@@ -1,357 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (200);
-CALL fill_t2 (200);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 200 Using where
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.k 1
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-i i
-135 135
-119 119
-211 211
-184 184
-232 232
-105 105
-188 188
-216 216
-255 255
-154 154
-197 197
-279 279
-218 218
-127 127
-203 203
-281 281
-194 194
-161 161
-276 276
-122 122
-139 139
-183 183
-114 114
-247 247
-144 144
-148 148
-174 174
-267 267
-142 142
-168 168
-226 226
-258 258
-231 231
-146 146
-253 253
-189 189
-230 230
-290 290
-178 178
-158 158
-130 130
-214 214
-133 133
-229 229
-294 294
-295 295
-108 108
-112 112
-297 297
-151 151
-251 251
-270 270
-291 291
-159 159
-132 132
-121 121
-244 244
-272 272
-293 293
-186 186
-111 111
-166 166
-201 201
-175 175
-180 180
-209 209
-192 192
-246 246
-195 195
-107 107
-233 233
-239 239
-103 103
-109 109
-128 128
-266 266
-143 143
-160 160
-187 187
-243 243
-273 273
-259 259
-110 110
-176 176
-141 141
-170 170
-215 215
-191 191
-200 200
-271 271
-162 162
-260 260
-106 106
-150 150
-126 126
-147 147
-155 155
-193 193
-207 207
-287 287
-235 235
-252 252
-129 129
-205 205
-268 268
-278 278
-116 116
-137 137
-199 199
-217 217
-234 234
-190 190
-236 236
-257 257
-100 100
-210 210
-212 212
-264 264
-221 221
-241 241
-256 256
-262 262
-265 265
-269 269
-277 277
-173 173
-177 177
-208 208
-219 219
-285 285
-101 101
-164 164
-113 113
-125 125
-202 202
-140 140
-156 156
-282 282
-181 181
-206 206
-299 299
-102 102
-145 145
-227 227
-196 196
-138 138
-198 198
-204 204
-237 237
-171 171
-284 284
-263 263
-292 292
-104 104
-149 149
-250 250
-296 296
-228 228
-280 280
-242 242
-248 248
-185 185
-220 220
-245 245
-275 275
-118 118
-120 120
-152 152
-153 153
-157 157
-182 182
-179 179
-254 254
-288 288
-172 172
-283 283
-286 286
-115 115
-238 238
-289 289
-131 131
-223 223
-134 134
-136 136
-222 222
-225 225
-261 261
-274 274
-123 123
-163 163
-224 224
-117 117
-298 298
-169 169
-124 124
-167 167
-240 240
-249 249
-165 165
-213 213
-connection root1;
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 1 AND t1.k = t2.k LOCK IN SHARE MODE;
-i i
-209 209
-195 195
-107 107
-233 233
-239 239
-103 103
-109 109
-143 143
-187 187
-243 243
-273 273
-259 259
-141 141
-215 215
-191 191
-271 271
-147 147
-155 155
-193 193
-207 207
-287 287
-235 235
-129 129
-205 205
-137 137
-199 199
-217 217
-257 257
-221 221
-241 241
-265 265
-269 269
-277 277
-173 173
-177 177
-135 135
-119 119
-211 211
-105 105
-255 255
-197 197
-279 279
-127 127
-203 203
-281 281
-161 161
-139 139
-183 183
-247 247
-267 267
-231 231
-253 253
-189 189
-133 133
-229 229
-295 295
-297 297
-151 151
-251 251
-291 291
-159 159
-121 121
-293 293
-111 111
-201 201
-175 175
-185 185
-245 245
-275 275
-153 153
-157 157
-179 179
-283 283
-115 115
-289 289
-131 131
-223 223
-225 225
-261 261
-123 123
-163 163
-117 117
-169 169
-167 167
-249 249
-165 165
-213 213
-219 219
-285 285
-101 101
-113 113
-125 125
-181 181
-299 299
-145 145
-227 227
-237 237
-171 171
-263 263
-149 149
-UPDATE t1,t2 SET t1.i=1111,t2.i=2222 WHERE t1.k % 2 = 1 AND t1.k = t2.k;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result
deleted file mode 100644
index adb89b03480..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result
+++ /dev/null
@@ -1,255 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-CREATE INDEX ixi ON t2 (i);
-CREATE PROCEDURE fill_t1 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t1 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t1() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t1;
-RETURN res;
-END;
-|
-CREATE PROCEDURE fill_t2 (IN upb int)
-BEGIN
-DECLARE cnt int DEFAULT 0;
-WHILE cnt < upb DO
-INSERT INTO t2 VALUES (cnt, cnt+100, cnt, cnt+100);
-SET cnt= cnt+1;
-END WHILE;
-END;
-|
-CREATE FUNCTION half_t2() RETURNS int
-BEGIN
-DECLARE res int DEFAULT 0;
-SELECT MOD(k,2) INTO res FROM t2;
-RETURN res;
-END;
-|
-CALL fill_t1 (200);
-CALL fill_t2 (200);
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 200 Using where
-1 SIMPLE t2 eq_ref PRIMARY PRIMARY 4 test.t1.k 1
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-i i
-135 135
-119 119
-211 211
-184 184
-232 232
-105 105
-188 188
-216 216
-255 255
-154 154
-197 197
-279 279
-218 218
-127 127
-203 203
-281 281
-194 194
-161 161
-276 276
-122 122
-139 139
-183 183
-114 114
-247 247
-144 144
-148 148
-174 174
-267 267
-142 142
-168 168
-226 226
-258 258
-231 231
-146 146
-253 253
-189 189
-230 230
-290 290
-178 178
-158 158
-130 130
-214 214
-133 133
-229 229
-294 294
-295 295
-108 108
-112 112
-297 297
-151 151
-251 251
-270 270
-291 291
-159 159
-132 132
-121 121
-244 244
-272 272
-293 293
-186 186
-111 111
-166 166
-201 201
-175 175
-180 180
-209 209
-192 192
-246 246
-195 195
-107 107
-233 233
-239 239
-103 103
-109 109
-128 128
-266 266
-143 143
-160 160
-187 187
-243 243
-273 273
-259 259
-110 110
-176 176
-141 141
-170 170
-215 215
-191 191
-200 200
-271 271
-162 162
-260 260
-106 106
-150 150
-126 126
-147 147
-155 155
-193 193
-207 207
-287 287
-235 235
-252 252
-129 129
-205 205
-268 268
-278 278
-116 116
-137 137
-199 199
-217 217
-234 234
-190 190
-236 236
-257 257
-100 100
-210 210
-212 212
-264 264
-221 221
-241 241
-256 256
-262 262
-265 265
-269 269
-277 277
-173 173
-177 177
-208 208
-219 219
-285 285
-101 101
-164 164
-113 113
-125 125
-202 202
-140 140
-156 156
-282 282
-181 181
-206 206
-299 299
-102 102
-145 145
-227 227
-196 196
-138 138
-198 198
-204 204
-237 237
-171 171
-284 284
-263 263
-292 292
-104 104
-149 149
-250 250
-296 296
-228 228
-280 280
-242 242
-248 248
-185 185
-220 220
-245 245
-275 275
-118 118
-120 120
-152 152
-153 153
-157 157
-182 182
-179 179
-254 254
-288 288
-172 172
-283 283
-286 286
-115 115
-238 238
-289 289
-131 131
-223 223
-134 134
-136 136
-222 222
-225 225
-261 261
-274 274
-123 123
-163 163
-224 224
-117 117
-298 298
-169 169
-124 124
-167 167
-240 240
-249 249
-165 165
-213 213
-connection root1;
-DELETE FROM t1 WHERE t1.k % 2 = 1;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result
deleted file mode 100644
index eb69fd2e306..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result
+++ /dev/null
@@ -1,148 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE t1 SET l = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 226
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 225
-4 126 4 226
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 223
-2 124 2 224
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result
deleted file mode 100644
index bedb75da93a..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result
+++ /dev/null
@@ -1,35 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE t1 SET l = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result
deleted file mode 100644
index 279f2626c73..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result
+++ /dev/null
@@ -1,194 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE v1 SET i=325 where i=125;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-123 123
-123 124
-123 125
-123 126
-124 123
-124 124
-124 125
-124 126
-126 123
-126 124
-126 125
-126 126
-325 123
-325 124
-325 125
-325 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 126 4 126
-connection default;
-UPDATE v1 SET i=323 where i=123;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-124 123
-124 124
-124 125
-124 126
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE v1 SET i=326 where i=126;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-123 123
-123 124
-123 125
-123 126
-124 123
-124 124
-124 125
-124 126
-325 123
-325 124
-325 125
-325 126
-326 123
-326 124
-326 125
-326 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 326 4 126
-connection default;
-UPDATE v1 SET i=324 where i=124;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-324 123
-324 124
-324 125
-324 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 326 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result
deleted file mode 100644
index 9e74e93b0cc..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result
+++ /dev/null
@@ -1,200 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4
-SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-i
-123
-124
-123
-124
-123
-124
-123
-124
-connection root1;
-UPDATE v1 SET i=325 where i=125;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-123 123
-123 124
-123 125
-123 126
-124 123
-124 124
-124 125
-124 126
-126 123
-126 124
-126 125
-126 126
-325 123
-325 124
-325 125
-325 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 126 4 126
-connection default;
-UPDATE v1 SET i=323 where i=123;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-124 123
-124 124
-124 125
-124 126
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE v1 SET i=326 where i=126;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-123 123
-123 124
-123 125
-123 126
-124 123
-124 124
-124 125
-124 126
-325 123
-325 124
-325 125
-325 126
-326 123
-326 124
-326 125
-326 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 326 4 126
-connection default;
-UPDATE v1 SET i=324 where i=124;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-324 123
-324 124
-324 125
-324 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 325 3 125
-4 326 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result
deleted file mode 100644
index b5b1c519702..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result
+++ /dev/null
@@ -1,169 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ref ixi ixi 5 test.t1.i 1 Using where
-SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-i i
-123 123
-124 124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE v1 SET i=323 where i=123;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-124 123
-124 124
-124 125
-124 126
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t1,t2 SET t1.i=226,t2.i=226 WHERE t1.i=126 AND t2.i=t1.i;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE v1 SET i=324 where i=124;
-SELECT * FROM v1 ORDER BY i,l;
-i l
-125 123
-125 124
-125 125
-125 126
-126 123
-126 124
-126 125
-126 126
-323 123
-323 124
-323 125
-323 126
-324 123
-324 124
-324 125
-324 126
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 323 1 123
-2 324 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP VIEW IF EXISTS v1;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result
deleted file mode 100644
index d92f9ad9664..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result
+++ /dev/null
@@ -1,38 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i, t2.l from t1,t2;
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-1 SIMPLE t2 ALL NULL NULL NULL NULL 4
-SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-i
-123
-124
-123
-124
-123
-124
-123
-124
-connection root1;
-UPDATE t1,t2 SET t1.i=225,t2.i=225 WHERE t1.i=125 AND t2.i=t1.i;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result
deleted file mode 100644
index e2a2a6e7deb..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result
+++ /dev/null
@@ -1,309 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-DROP PROCEDURE IF EXISTS stp_t;
-SET autocommit=0;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-INSERT INTO t1 VALUES (5,127,5,127);
-INSERT INTO t1 VALUES (6,128,6,128);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-INSERT INTO t2 VALUES (5,127,5,127);
-INSERT INTO t2 VALUES (6,128,6,128);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE PROCEDURE stp_t (IN p1 int, IN p2 int) MODIFIES SQL DATA
-BEGIN
-UPDATE t2 SET i = p2 WHERE i = p1;
-UPDATE v1 SET i = p2 WHERE i = p1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-CALL stp_t (125, 225);
-i
-123
-124
-126
-127
-128
-225
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-CALL stp_t (127, 227);
-i
-123
-124
-125
-126
-128
-227
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 128 6 128
-connection default;
-CALL stp_t (123, 223);
-i
-124
-125
-126
-127
-128
-223
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-CALL stp_t (126, 226);
-i
-123
-124
-127
-128
-225
-226
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-CALL stp_t (128, 228);
-i
-123
-124
-125
-126
-227
-228
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-CALL stp_t (124, 224);
-i
-125
-126
-127
-128
-223
-224
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-DELETE FROM t1 WHERE t1.i=228;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-COMMIT;
-connection root1;
-ROLLBACK;
-connection root1;
-COMMIT;
-connection default;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-127
-128
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root1;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-127
-128
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 127 5 127
-6 128 6 128
-connection root2;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-227
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-5 227 5 127
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-5 227 5 127
-6 228 6 128
-connection default;
-DROP VIEW v1;
-DROP PROCEDURE stp_t;
-DROP TABLE t1, t2;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result
deleted file mode 100644
index 6dbd5f834ed..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result
+++ /dev/null
@@ -1,46 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-DROP PROCEDURE IF EXISTS stp_t;
-SET autocommit=0;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-INSERT INTO t1 VALUES (5,127,5,127);
-INSERT INTO t1 VALUES (6,128,6,128);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-INSERT INTO t2 VALUES (5,127,5,127);
-INSERT INTO t2 VALUES (6,128,6,128);
-#CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE PROCEDURE stp_t (IN p1 int, IN p2 int) MODIFIES SQL DATA
-BEGIN
-UPDATE t2 SET i = p2 WHERE i = p1;
-UPDATE v1 SET i = p2 WHERE i = p1;
-SELECT * FROM v1 ORDER BY i;
-SELECT * FROM t1 ORDER BY t1.k;
-SELECT * FROM t2 ORDER BY t2.k;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-CALL stp_t (125, 225);
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result
deleted file mode 100644
index f5c745ca41c..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result
+++ /dev/null
@@ -1,180 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE v1 SET i = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range ixi ixi 5 NULL 10 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
-SELECT * FROM v1 ORDER BY i;
-i
-123
-124
-126
-225
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 126 4 126
-connection default;
-UPDATE t2 SET t2.i=223 WHERE t2.i=123;
-SELECT * FROM v1 ORDER BY i;
-i
-124
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 124 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-UPDATE t2 SET t2.i=226 WHERE t2.i=126;
-SELECT * FROM v1 ORDER BY i;
-i
-123
-124
-225
-226
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-UPDATE t2 SET t2.i=224 WHERE t2.i=124;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-224
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-DELETE FROM t1 WHERE t1.i=226;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 123 1 123
-2 124 2 124
-3 225 3 125
-4 226 4 126
-connection default;
-DELETE FROM t1 WHERE t1.i=224;
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-COMMIT;
-connection root1;
-ROLLBACK;
-connection default;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection root1;
-SELECT * FROM v1 ORDER BY i;
-i
-125
-126
-223
-SELECT * FROM t1 ORDER BY t1.k;
-k i j l
-1 223 1 123
-3 125 3 125
-4 126 4 126
-SELECT * FROM t2 ORDER BY t2.k;
-k i j l
-1 223 1 123
-2 224 2 124
-3 125 3 125
-4 126 4 126
-connection default;
-DROP TABLE t1, t2;
-DROP VIEW v1;
diff --git a/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result b/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result
deleted file mode 100644
index d6a38753c1d..00000000000
--- a/mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result
+++ /dev/null
@@ -1,36 +0,0 @@
-DROP TABLE IF EXISTS t1, t2;
-DROP VIEW IF EXISTS v1;
-SET autocommit=0;
-SET autocommit=0;
-connection default;
-CREATE TABLE t1 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t1 VALUES (1,123,1,123);
-INSERT INTO t1 VALUES (2,124,2,124);
-INSERT INTO t1 VALUES (3,125,3,125);
-INSERT INTO t1 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t1 (i);
-CREATE TABLE t2 (k INT NOT NULL PRIMARY KEY, i INT, j INT, l INT) ENGINE=NDB;
-INSERT INTO t2 VALUES (1,123,1,123);
-INSERT INTO t2 VALUES (2,124,2,124);
-INSERT INTO t2 VALUES (3,125,3,125);
-INSERT INTO t2 VALUES (4,126,4,126);
-#CREATE INDEX ixi ON t2 (i);
-CREATE VIEW v1 AS SELECT t1.i from t1;
-CREATE TRIGGER trig_t2 AFTER UPDATE ON t2
-FOR EACH ROW BEGIN
-UPDATE v1 SET i = NEW.i WHERE i = OLD.i;
-END;
-|
-COMMIT;
-SELECT @@global.tx_isolation;
-@@global.tx_isolation
-REPEATABLE-READ
-EXPLAIN SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
-SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-i
-123
-124
-connection root1;
-UPDATE t2 SET t2.i=225 WHERE t2.i=125;
diff --git a/mysql-test/suite/row_lock/readme.txt b/mysql-test/suite/row_lock/readme.txt
deleted file mode 100644
index b43f04ecda4..00000000000
--- a/mysql-test/suite/row_lock/readme.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-All row lock test with InnoDB have to be executed with the options
-
---innodb_lock_wait_timeout=1
---innodb_locks_unsafe_for_binlog
-
-for example
-
-perl mysql-test-run.pl --mysqld=--innodb_lock_wait_timeout=2 --mysqld=--innodb_locks_unsafe_for_binlog --suite=row_lock innodb_row_lock_2
-
diff --git a/mysql-test/suite/row_lock/summary_of_sel_test.txt b/mysql-test/suite/row_lock/summary_of_sel_test.txt
deleted file mode 100644
index 0fa332e957a..00000000000
--- a/mysql-test/suite/row_lock/summary_of_sel_test.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-Test plan:
-Create 2 tables with a primary key and 3 integer columns. Both get the same rows (1,123,1,123),(2,124,2,124),(3,125,3,125),(4,126,4,126). The second and third column may get an index to have cases with, without and mutilple index. Create views on the tables. Create an update trigger. Create a stored procedure updating the table. Create a stored function updating the table and deliver the key as result.
-
-The test isself consists of 2 sessions (transactions) running in "parallel" (same user "root") accessing and locking the same tables on basis of a row lock. Expected is that both sessions(transactions) can update the table successfully.
-
-First session
-execute an explain to every select and one of the following selects on the first half of table t1:
-- select <non index columns> ... where ... for update;
-- select <non index columns> ... where ... lock in share mode;
-- select <indexed columns> ... where ... for update;
-- select <indexed columns> ... where ... lock in share mode;
-- select <indexed columns> ... ignore index ... where ... for update;
-- select <indexed columns> ... ignore index ... where ... lock in share mode;
-- select ... where (select...) ... for update;
-- select ... where (select...) ... lock in share mode;
-- (select ... where) union (select ... where) for update;
-- (select ... where) union (select ... where) lock in...;
-- select <view> ... where ... for update;
-- select <view> ... where ... lock in ...;
-- select <join> ... where ... for update;
-- select <join> ... where ... lock in ...;
-Then executes
-- update
-- delete
-- trigger accessing table t1
-- stored procedure accessing table t1
-- stored function accessing table t1
-
-Second session
-executes the same on the last half of table t1
-
-call of mysqld with option
---innodb_locks_unsafe_for_binlog
-
-As the tests above work with small tables (<10 rows) there must be at least one test with a big table (>1000 rows) doing a table scan.
-
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_1.test
deleted file mode 100644
index e0440fe2669..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_2.test
deleted file mode 100644
index 5cb3ea9f2d9..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_2.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_3.test b/mysql-test/suite/row_lock/t/innodb_row_lock_3.test
deleted file mode 100644
index 11f4dc423d6..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_3.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_4.test b/mysql-test/suite/row_lock/t/innodb_row_lock_4.test
deleted file mode 100644
index 0a8ca9c13a0..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_4.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_5.test b/mysql-test/suite/row_lock/t/innodb_row_lock_5.test
deleted file mode 100644
index 7e411d31649..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_5.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test b/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test
deleted file mode 100644
index 0c5b8b41bd5..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test
deleted file mode 100644
index a12a07d82a9..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test
+++ /dev/null
@@ -1,10 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $nbrows= 40;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab_1.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test
deleted file mode 100644
index 49e834eb2ce..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test
+++ /dev/null
@@ -1,10 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $nbrows= 40;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.k % 2= 0 AND t1.k = t2.k LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab_2.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test
deleted file mode 100644
index 225513d3f87..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_trig.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test
deleted file mode 100644
index 88dee5f23f8..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_trig.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test
deleted file mode 100644
index d6381e1da5b..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test
deleted file mode 100644
index ee45e683669..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test
deleted file mode 100644
index 49cba88dd23..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_mix.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test
deleted file mode 100644
index b07f3a3378a..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test
+++ /dev/null
@@ -1,10 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-#let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $select= SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_mix.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test
deleted file mode 100644
index d507ff3296f..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_storedp.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test
deleted file mode 100644
index a1bfb16055e..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_storedp.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test
deleted file mode 100644
index 24c76532d17..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_trig.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test b/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test
deleted file mode 100644
index a8a67d77979..00000000000
--- a/mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test
+++ /dev/null
@@ -1,9 +0,0 @@
---source include/have_innodb.inc
-SELECT @@global.innodb_table_locks into @table_locks;
-SET @@global.innodb_table_locks= OFF;
-let $engine= InnoDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_trig.inc
-SET @@global.innodb_table_locks= @table_locks;
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_1.test
deleted file mode 100644
index 6ac2e829008..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_1.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_2.test
deleted file mode 100644
index 994ecba96b0..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_3.test b/mysql-test/suite/row_lock/t/ndb_row_lock_3.test
deleted file mode 100644
index 2de43c61c2a..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_3.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_4.test b/mysql-test/suite/row_lock/t/ndb_row_lock_4.test
deleted file mode 100644
index 72b20488c74..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_4.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_5.test b/mysql-test/suite/row_lock/t/ndb_row_lock_5.test
deleted file mode 100644
index 045f127a4ef..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_5.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1 ignore index (ixi),t2 IGNORE INDEX (ixi) WHERE t1.i<125 AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test b/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test
deleted file mode 100644
index bf2df104e03..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < half_t1() AND t2.i=t1.i LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test
deleted file mode 100644
index 4d32991d379..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test
+++ /dev/null
@@ -1,7 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $nbrows= 200;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab_1.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test
deleted file mode 100644
index 894a83fc1b0..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test
+++ /dev/null
@@ -1,7 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $nbrows= 200;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i < t1.k % 2 = 0 AND t2.k=t1.k LOCK IN SHARE MODE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_big_tab_2.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test
deleted file mode 100644
index a5586a6101e..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_trig.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test
deleted file mode 100644
index 7af13697ccc..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_trig.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test
deleted file mode 100644
index a1aaf5ab441..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test
+++ /dev/null
@@ -1,7 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view.inc
-
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test
deleted file mode 100644
index b8feef693e7..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test
deleted file mode 100644
index a97626048d3..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i,t2.i FROM t1,t2 WHERE t1.i<125 AND t2.i=t1.i FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_mix.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test
deleted file mode 100644
index e7a9a715785..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT v1.i FROM v1 WHERE v1.i<125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_mix.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test
deleted file mode 100644
index f57bcb3dd1b..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_storedp.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test
deleted file mode 100644
index b0aaa38fb93..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_storedp.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test
deleted file mode 100644
index 9c4128d78bf..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= CREATE INDEX ixi ON t1 (i);
-let $indext2= CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_trig.inc
diff --git a/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test b/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test
deleted file mode 100644
index 38c9472fb3d..00000000000
--- a/mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test
+++ /dev/null
@@ -1,6 +0,0 @@
---source include/have_ndb.inc
-let $engine= NDB;
-let $select= SELECT t1.i FROM t1 WHERE t1.i< 125 FOR UPDATE;
-let $indext1= #CREATE INDEX ixi ON t1 (i);
-let $indext2= #CREATE INDEX ixi ON t2 (i);
---source suite/row_lock/include/row_lock_view_trig.inc
diff --git a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
index 368a659d939..96b5c8049b8 100644
--- a/mysql-test/t/disabled.def
+++ b/mysql-test/t/disabled.def
@@ -19,6 +19,7 @@ im_instance_conf : Bug#20294 2007-05-30 alik Instance manager tests
im_life_cycle : BUG#27851 Instance manager dies on ASSERT in ~Thread_registry() or from not being able to close a mysqld instance.
im_instance_conf : BUG#28743 Instance manager generates warnings in test suite
im_utils : BUG#28743 Instance manager generates warnings in test suite
+
concurrent_innodb : BUG#21579 2006-08-11 mleich innodb_concurrent random failures with varying differences
ctype_big5 : BUG#26711 2007-06-21 Lars Test has never worked on Double Whopper
diff --git a/mysql-test/t/events_bugs.test b/mysql-test/t/events_bugs.test
index 4186b4701fa..36052fdb9af 100644
--- a/mysql-test/t/events_bugs.test
+++ b/mysql-test/t/events_bugs.test
@@ -722,3 +722,18 @@ let $wait_condition=
--source include/wait_condition.inc
DROP DATABASE events_test;
+
+
+#
+# Bug#28641 CREATE EVENT with '2038.01.18 03:00:00' let server crash.
+#
+SET GLOBAL event_scheduler= ON;
+DELIMITER |;
+CREATE EVENT bug28641 ON SCHEDULE AT '2038.01.18 03:00:00'
+ DO BEGIN
+ SELECT 1;
+ END;|
+
+DELIMITER ;|
+SET GLOBAL event_scheduler= OFF;
+DROP EVENT bug28641;
diff --git a/mysql-test/t/federated.test b/mysql-test/t/federated.test
index efca7f3232d..6597c77e798 100644
--- a/mysql-test/t/federated.test
+++ b/mysql-test/t/federated.test
@@ -1632,6 +1632,46 @@ drop table federated.t1;
connection slave;
drop table federated.t1;
+#
+# Bug#26909: Specified key was too long; max key length is 255 bytes
+# when creating a table
+#
+connection slave;
+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;
+
+connection master;
+--replace_result $SLAVE_MYPORT SLAVE_PORT
+eval 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_MYPORT/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;
+select categoryId from federated.t1 where domainId='a' and categoryName='b' order by categoryId;
+select categoryId from federated.t1 where domainId='a' and categoryName='b' order by categoryId;
+select categoryId from federated.t1 where domainId<>'a' and categoryName<>'b' order by categoryId;
+
+drop table federated.t1;
+
+connection slave;
+drop table federated.t1;
#
# BUG#21019 Federated Engine does not support REPLACE/INSERT IGNORE/UPDATE IGNORE
diff --git a/mysql-test/t/func_time.test b/mysql-test/t/func_time.test
index 4b952b66ff3..95ffa110346 100644
--- a/mysql-test/t/func_time.test
+++ b/mysql-test/t/func_time.test
@@ -423,11 +423,11 @@ select strcmp(concat(utc_date(),' ',utc_time()),utc_timestamp())=0;
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);
-SET @TMP=NOW();
+SET @TMP='2007-08-01 12:22:49';
CREATE TABLE t1 (d DATETIME);
-INSERT INTO t1 VALUES (NOW());
-INSERT INTO t1 VALUES (NOW());
-INSERT INTO t1 VALUES (NOW());
+INSERT INTO t1 VALUES ('2007-08-01 12:22:59');
+INSERT INTO t1 VALUES ('2007-08-01 12:23:01');
+INSERT INTO t1 VALUES ('2007-08-01 12:23:20');
SELECT count(*) FROM t1 WHERE d>FROM_DAYS(TO_DAYS(@TMP)) AND d<=FROM_DAYS(TO_DAYS(@TMP)+1);
DROP TABLE t1;
diff --git a/mysql-test/t/log_state.test b/mysql-test/t/log_state.test
index 16f466e9b54..b0bb818b783 100644
--- a/mysql-test/t/log_state.test
+++ b/mysql-test/t/log_state.test
@@ -126,6 +126,59 @@ drop table t1;
--replace_column 1 TIMESTAMP 2 USER_HOST 3 #
select * from mysql.general_log;
+#
+# Bug#29129 (Resetting general_log while the GLOBAL READ LOCK is set causes
+# a deadlock)
+
+# save state
+
+SET @old_general_log_state = @@global.general_log;
+SET @old_slow_log_state = @@global.slow_query_log;
+
+# Test ON->OFF transition under a GLOBAL READ LOCK
+
+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;
+
+# Test OFF->ON transition under a GLOBAL READ LOCK
+
+FLUSH TABLES WITH READ LOCK;
+
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+
+UNLOCK TABLES;
+
+# Test ON->OFF transition under a GLOBAL READ_ONLY
+
+SET GLOBAL READ_ONLY = ON;
+
+SET GLOBAL general_log = OFF;
+SET GLOBAL slow_query_log = OFF;
+
+SET GLOBAL READ_ONLY = OFF;
+
+# Test OFF->ON transition under a GLOBAL READ_ONLY
+
+SET GLOBAL READ_ONLY = ON;
+
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+
+SET GLOBAL READ_ONLY = OFF;
+
+# Restore state
+
+SET GLOBAL general_log = @old_general_log_state;
+SET GLOBAL slow_query_log = @old_slow_log_state;
+
--enable_ps_protocol
#
diff --git a/mysql-test/t/log_tables.test b/mysql-test/t/log_tables.test
index e8eff7cba0a..89c7c255554 100644
--- a/mysql-test/t/log_tables.test
+++ b/mysql-test/t/log_tables.test
@@ -64,10 +64,10 @@ flush logs;
# check locking of the log tables
#
---error ER_CANT_WRITE_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.general_log WRITE;
---error ER_CANT_WRITE_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.slow_log WRITE;
#
@@ -76,78 +76,59 @@ lock tables mysql.slow_log WRITE;
# tables are always opened and locked by the logger.
#
---error ER_CANT_READ_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.general_log READ;
---error ER_CANT_READ_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.slow_log READ;
#
-# This call should result in TL_READ lock on the log table. This is ok and
-# should pass.
+# This call should result in TL_READ lock on the log table.
+# This is not ok and should fail.
#
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.slow_log READ LOCAL, mysql.general_log READ LOCAL;
-unlock tables;
-
-#
-# check that FLUSH LOGS waits for all readers of the log table to vanish
-#
-
-connect (con1,localhost,root,,);
-connect (con2,localhost,root,,);
-
-connection con1;
-
-lock tables mysql.general_log READ LOCAL;
-
-connection con2;
+# Misc locking tests
-# this should wait for log tables to unlock
-send flush logs;
-
-connection con1;
-
-unlock tables;
-
-# this connection should be alive by the time
-connection con2;
-
-reap;
+show create table mysql.general_log;
+show fields from mysql.general_log;
-select "Mark that we woke up from flush logs in the test"
- as "test passed";
+show create table mysql.slow_log;
+show fields from mysql.slow_log;
#
-# perform the same check for TRUNCATE: it should also wait for readers
-# to disappear
+# check that FLUSH LOGS does not flush the log tables
#
-connection con1;
-
-lock tables mysql.general_log READ LOCAL;
-
-connection con2;
-
-# this should wait for log tables to unlock
-send truncate mysql.general_log;
+flush logs;
+flush tables;
-connection con1;
+SET GLOBAL GENERAL_LOG=ON;
+SET GLOBAL SLOW_QUERY_LOG=ON;
-unlock tables;
+show open tables;
+flush logs;
+show open tables;
-# this connection should be alive by the time
-connection con2;
+#
+# check that FLUSH TABLES does flush the log tables
+#
-reap;
+flush tables;
+# Since the flush is logged, mysql.general_log will be in the cache
+show open tables;
-select "Mark that we woke up from TRUNCATE in the test"
- as "test passed";
+SET GLOBAL GENERAL_LOG=OFF;
+SET GLOBAL SLOW_QUERY_LOG=OFF;
-connection con1;
+flush tables;
+# Here the table cache is empty
+show open tables;
-use test;
+SET GLOBAL GENERAL_LOG=ON;
+SET GLOBAL SLOW_QUERY_LOG=ON;
#
# Bug #16905 Log tables: unicode statements are logged incorrectly
@@ -220,10 +201,10 @@ flush logs;
# check locking of myisam-based log tables
---error ER_CANT_WRITE_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.general_log WRITE;
---error ER_CANT_WRITE_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.slow_log WRITE;
#
@@ -232,21 +213,12 @@ lock tables mysql.slow_log WRITE;
# tables are always opened and locked by the logger.
#
---error ER_CANT_READ_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.general_log READ;
---error ER_CANT_READ_LOCK_LOG_TABLE
+--error ER_CANT_LOCK_LOG_TABLE
lock tables mysql.slow_log READ;
-#
-# This call should result in TL_READ lock on the log table. This is ok and
-# should pass.
-#
-
-lock tables mysql.slow_log READ LOCAL, mysql.general_log READ LOCAL;
-
-unlock tables;
-
# check that we can drop them
set global general_log='OFF';
set global slow_query_log='OFF';
@@ -314,6 +286,7 @@ use test;
flush tables with read lock;
unlock tables;
use mysql;
+--error ER_CANT_LOCK_LOG_TABLE
lock tables general_log read local, help_category read local;
unlock tables;
@@ -368,9 +341,9 @@ set global slow_query_log='OFF';
RENAME TABLE slow_log TO slow_log2;
# this should fail
---error ER_CANT_ACTIVATE_LOG
+--error ER_NO_SUCH_TABLE
set global general_log='ON';
---error ER_CANT_ACTIVATE_LOG
+--error ER_NO_SUCH_TABLE
set global slow_query_log='ON';
RENAME TABLE general_log2 TO general_log;
@@ -470,8 +443,311 @@ FLUSH LOGS;
ALTER TABLE mysql.slow_log DROP COLUMN seq;
ALTER TABLE mysql.slow_log ENGINE = CSV;
-# kill all connections
-disconnect con1;
-disconnect con2;
+#
+# Bug#25422 (Hang with log tables)
+#
+
+--disable_warnings
+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;
+--enable_warnings
+
+delimiter //;
+
+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//
+
+delimiter ;//
+
+set @iterations=100;
+
+--echo "Serial test (proc25422_truncate_slow)"
+call proc25422_truncate_slow(@iterations);
+--echo "Serial test (proc25422_truncate_general)"
+call proc25422_truncate_general(@iterations);
+--echo "Serial test (proc25422_alter_slow)"
+call proc25422_alter_slow(@iterations);
+--echo "Serial test (proc25422_alter_general)"
+call proc25422_alter_general(@iterations);
+
+--echo "Parallel test"
+
+# ER_BAD_LOG_STATEMENT errors will occur,
+# since concurrent threads do SET GLOBAL general_log= ...
+# This is silenced by handlers and will not affect the test
+
+connect (addconroot1, localhost, root,,);
+connect (addconroot2, localhost, root,,);
+connect (addconroot3, localhost, root,,);
+connect (addconroot4, localhost, root,,);
+connect (addconroot5, localhost, root,,);
+connect (addconroot6, localhost, root,,);
+connect (addconroot7, localhost, root,,);
+connect (addconroot8, localhost, root,,);
+
+connection addconroot1;
+send call proc25422_truncate_slow(@iterations);
+connection addconroot2;
+send call proc25422_truncate_slow(@iterations);
+
+connection addconroot3;
+send call proc25422_truncate_general(@iterations);
+connection addconroot4;
+send call proc25422_truncate_general(@iterations);
+
+connection addconroot5;
+send call proc25422_alter_slow(@iterations);
+connection addconroot6;
+send call proc25422_alter_slow(@iterations);
+
+connection addconroot7;
+send call proc25422_alter_general(@iterations);
+connection addconroot8;
+send call proc25422_alter_general(@iterations);
+
+connection addconroot1;
+reap;
+connection addconroot2;
+reap;
+connection addconroot3;
+reap;
+connection addconroot4;
+reap;
+connection addconroot5;
+reap;
+connection addconroot6;
+reap;
+connection addconroot7;
+reap;
+connection addconroot8;
+reap;
+
+connection default;
+
+disconnect addconroot1;
+disconnect addconroot2;
+disconnect addconroot3;
+disconnect addconroot4;
+disconnect addconroot5;
+disconnect addconroot6;
+disconnect addconroot7;
+disconnect addconroot8;
+
+drop procedure proc25422_truncate_slow;
+drop procedure proc25422_truncate_general;
+drop procedure proc25422_alter_slow;
+drop procedure proc25422_alter_general;
+
--enable_ps_protocol
+
+#
+# Bug#23044 (Warnings on flush of a log table)
+#
+
+FLUSH TABLE mysql.general_log;
+show warnings;
+
+FLUSH TABLE mysql.slow_log;
+show warnings;
+
+#
+# Bug#17876 (Truncating mysql.slow_log in a SP after using cursor locks the
+# thread)
+#
+
+--disable_warnings
+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`;
+--enable_warnings
+
+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
+);
+
+DELIMITER //;
+
+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 //
+
+DELIMITER ;//
+
+SET @old_general_log_state = @@global.general_log;
+SET @old_slow_log_state = @@global.slow_query_log;
+
+SET GLOBAL general_log = ON;
+SET GLOBAL slow_query_log = ON;
+
+select "put something into general_log";
+select "... 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_state;
+SET GLOBAL slow_query_log = @old_slow_log_state;
+
diff --git a/mysql-test/t/mysqlbinlog.test b/mysql-test/t/mysqlbinlog.test
index 92f4b34da83..25bd9a402ae 100644
--- a/mysql-test/t/mysqlbinlog.test
+++ b/mysql-test/t/mysqlbinlog.test
@@ -219,6 +219,27 @@ flush logs;
DROP TABLE t1;
--exec $MYSQL_BINLOG --hexdump --local-load=$MYSQLTEST_VARDIR/tmp/ $MYSQLTEST_VARDIR/log/master-bin.000012 | grep 'Query' | sed 's/[0-9]\{1,\}/REMOVED/g'
+#
+# Bug #29928: incorrect connection_id() restoring from mysqlbinlog out
+#
+flush logs;
+create table t1(a int);
+insert into t1 values(connection_id());
+let $a= `select a from t1`;
+flush logs;
+--exec $MYSQL_BINLOG $MYSQLTEST_VARDIR/log/master-bin.000014 > $MYSQLTEST_VARDIR/tmp/bug29928.sql
+drop table t1;
+connect (con1, localhost, root, , test);
+connection con1;
+--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug29928.sql
+--remove_file $MYSQLTEST_VARDIR/tmp/bug29928.sql
+let $b= `select a from t1`;
+disconnect con1;
+connection default;
+let $c= `select $a=$b`;
+--echo $c
+drop table t1;
+
--echo End of 5.0 tests
#
@@ -226,7 +247,7 @@ DROP TABLE t1;
#
flush logs;
--error 1
---exec $MYSQL_BINLOG $MYSQLTEST_VARDIR/log/master-bin.000014 >/dev/null 2>/dev/null
---exec $MYSQL_BINLOG --force-if-open $MYSQLTEST_VARDIR/log/master-bin.000014 >/dev/null 2>/dev/null
+--exec $MYSQL_BINLOG $MYSQLTEST_VARDIR/log/master-bin.000016 >/dev/null 2>/dev/null
+--exec $MYSQL_BINLOG --force-if-open $MYSQLTEST_VARDIR/log/master-bin.000016 >/dev/null 2>/dev/null
--echo End of 5.1 tests
diff --git a/mysql-test/t/mysqldump.test b/mysql-test/t/mysqldump.test
index 4e8d3ae916e..171434f9dfd 100644
--- a/mysql-test/t/mysqldump.test
+++ b/mysql-test/t/mysqldump.test
@@ -1698,6 +1698,63 @@ drop database mysqldump_test_db;
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug26121.sql
--remove_file $MYSQLTEST_VARDIR/tmp/bug26121.sql
+###########################################################################
+
+--echo #
+--echo # Bug #30027: mysqldump does not dump views properly.
+--echo #
+
+--echo
+--echo # Cleanup.
+
+--disable_warnings
+DROP DATABASE IF EXISTS mysqldump_test_db;
+--enable_warnings
+
+--echo
+--echo # 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;
+
+--echo
+--echo # Dump mysqldump_test_db to bug30027.sql.
+
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --default-character-set=latin1 --databases mysqldump_test_db > $MYSQLTEST_VARDIR/tmp/bug30027.sql
+
+--echo
+--echo # Drop mysqldump_test_db.
+
+DROP DATABASE mysqldump_test_db;
+
+--echo
+--echo # Restore mysqldump_test_db from bug30027.sql.
+
+--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug30027.sql
+
+--echo
+--echo # Check the view.
+
+set names utf8;
+
+SHOW CREATE VIEW mysqldump_test_db.v1;
+SHOW CREATE VIEW mysqldump_test_db.v2;
+
+set names latin1;
+
+--echo
+--echo # Cleanup.
+
+DROP DATABASE mysqldump_test_db;
+
+###########################################################################
+
--echo #
--echo # End of 5.1 tests
--echo #
diff --git a/mysql-test/t/mysqlslap.test b/mysql-test/t/mysqlslap.test
index 2a7bbfed932..192aefb0e03 100644
--- a/mysql-test/t/mysqlslap.test
+++ b/mysql-test/t/mysqlslap.test
@@ -36,3 +36,5 @@
--exec $MYSQL_SLAP --silent --concurrency=5 --iterations=1 --number-int-cols=2 --number-char-cols=3 --auto-generate-sql --auto-generate-sql-guid-primary --auto-generate-sql-load-type=key --auto-generate-sql-execute-number=5 --auto-generate-sql-secondary-indexes=3
--exec $MYSQL_SLAP --only-print --delimiter=";" --query="select * from t1;select * from t2" --create="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')" --engine="heap,myisam" --post-query="SHOW TABLES" --pre-query="SHOW TABLES";
+
+ --exec $MYSQL_SLAP --only-print --delimiter=";" --query="select * from t1;select * from t2" --create="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')" --engine="heap,myisam" --post-query="SHOW TABLES" --pre-query="SHOW TABLES" --number-of-queries=6 --commit=1;
diff --git a/mysql-test/t/ps.test b/mysql-test/t/ps.test
index 394f44bbc83..5a4d30fdd50 100644
--- a/mysql-test/t/ps.test
+++ b/mysql-test/t/ps.test
@@ -2018,10 +2018,17 @@ delimiter ;|
select func_1(), func_1(), func_1() from dual;
drop function func_1;
drop procedure proc_1;
+
+# make the output deterministic:
+# the order used in SHOW OPEN TABLES
+# is too much implementation dependent
+--disable_ps_protocol
flush tables;
select Host, User from mysql.user limit 0;
select Host, Db from mysql.host limit 0;
show open tables from mysql;
+--enable_ps_protocol
+
prepare abc from "flush tables";
execute abc;
show open tables from mysql;
diff --git a/mysql-test/t/show_check.test b/mysql-test/t/show_check.test
index 5856803d390..a4cd8d323f9 100644
--- a/mysql-test/t/show_check.test
+++ b/mysql-test/t/show_check.test
@@ -438,6 +438,11 @@ drop table if exists t1;
CREATE TABLE txt1(a int);
CREATE TABLE tyt2(a int);
CREATE TABLE urkunde(a int);
+
+# make the output deterministic:
+# the order used in SHOW OPEN TABLES
+# is too much implementation dependent
+--disable_ps_protocol
FLUSH TABLES;
SELECT 1 FROM mysql.db, mysql.proc, mysql.user, mysql.time_zone, mysql.time_zone_name, txt1, tyt2, urkunde LIMIT 0;
SHOW OPEN TABLES;
@@ -447,6 +452,8 @@ SHOW OPEN TABLES LIKE 't%';
SHOW OPEN TABLES LIKE '%o%';
FLUSH TABLES;
SHOW OPEN TABLES;
+--enable_ps_protocol
+
DROP TABLE txt1;
DROP TABLE tyt2;
DROP TABLE urkunde;
@@ -616,6 +623,10 @@ drop event e1;
# FROM I_S.
#
+#
+# Part 1: check that meta-data specifies not-binary character set.
+#
+
# Ensure that all needed objects are dropped.
--disable_warnings
@@ -824,6 +835,59 @@ DROP PROCEDURE p1;
DROP FUNCTION f1;
#
+# Part 2: check that table with non-latin1 characters are dumped/restored
+# correctly.
+#
+
+# Ensure that all needed objects are dropped.
+
+set names koi8r;
+
+--disable_warnings
+DROP DATABASE IF EXISTS mysqltest1;
+--enable_warnings
+
+# Create objects.
+
+CREATE DATABASE mysqltest1;
+
+use mysqltest1;
+
+CREATE TABLE t1(ËÏÌÏÎËÁ1 INT);
+
+# Check:
+# - Dump mysqltest1;
+
+--echo
+--echo ---> Dumping mysqltest1 to show_check.mysqltest1.sql
+
+--exec $MYSQL_DUMP --default-character-set=latin1 --character-sets-dir=$CHARSETSDIR --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/show_check.mysqltest1.sql
+
+# - Clean mysqltest1;
+
+--echo
+--echo
+
+DROP DATABASE mysqltest1;
+
+# - Restore mysqltest1;
+
+--echo
+--echo
+
+--echo ---> Restoring mysqltest1...
+--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/show_check.mysqltest1.sql
+
+# - Check definition of the table.
+
+SHOW CREATE TABLE mysqltest1.t1;
+
+# Cleanup.
+
+DROP DATABASE mysqltest1;
+use test;
+
+#
# Bug #28808: log_queries_not_using_indexes variable dynamic change is ignored
#
flush status;
diff --git a/mysql-test/t/sp-prelocking.test b/mysql-test/t/sp-prelocking.test
index 60e97260839..966c59a5789 100644
--- a/mysql-test/t/sp-prelocking.test
+++ b/mysql-test/t/sp-prelocking.test
@@ -356,4 +356,35 @@ create table t1 select f_bug22427() as i;
drop table t1;
drop function f_bug22427;
+--echo #
+--echo # Bug #29929 LOCK TABLES does not pre-lock tables used in triggers of the locked tables
+--echo #
+--disable_warnings
+DROP table IF EXISTS t1,t2;
+--enable_warnings
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c2 INT);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+DELIMITER //;
+CREATE TRIGGER t1_ai AFTER INSERT ON t1 FOR EACH ROW
+BEGIN
+UPDATE t2 SET c2= c2 + 1;
+END//
+DELIMITER ;//
+--echo # Take a table lock on t1.
+--echo # This should pre-lock t2 through the trigger.
+LOCK TABLE t1 WRITE;
+INSERT INTO t1 VALUES (3);
+UNLOCK TABLES;
+LOCK TABLE t1 READ;
+--error ER_TABLE_NOT_LOCKED
+INSERT INTO t2 values(4);
+UNLOCK TABLES;
+SELECT * FROM t1;
+SELECT * FROM t2;
+DROP TRIGGER t1_ai;
+DROP TABLE t1, t2;
+
--echo End of 5.0 tests
+
diff --git a/mysql-test/t/ssl_8k_key.test b/mysql-test/t/ssl_8k_key.test
new file mode 100644
index 00000000000..b4203e68445
--- /dev/null
+++ b/mysql-test/t/ssl_8k_key.test
@@ -0,0 +1,6 @@
+-- source include/have_ssl.inc
+#
+# Bug#29784 YaSSL assertion failure when reading 8k key.
+#
+--exec $MYSQL --ssl --ssl-key=$MYSQL_TEST_DIR/std_data/client-key.pem --ssl-cert=$MYSQL_TEST_DIR/std_data/client-cert.pem -e "SHOW STATUS LIKE 'ssl_Cipher'" 2>&1
+
diff --git a/mysql-test/t/status.test b/mysql-test/t/status.test
index 1208393aa09..9fd54d4766d 100644
--- a/mysql-test/t/status.test
+++ b/mysql-test/t/status.test
@@ -22,13 +22,13 @@ connection con2;
lock tables t1 read;
unlock tables;
lock tables t1 read;
-let $ID= `select connection_id()`;
connection con1;
+let $ID= `select connection_id()`;
--send
update t1 set n = 3;
connection con2;
# wait for the other query to start executing
-let $wait_condition= select 1 from INFORMATION_SCHEMA.PROCESSLIST where ID = $ID and STATE = 0;
+let $wait_condition= select 1 from INFORMATION_SCHEMA.PROCESSLIST where ID = $ID and STATE = "Locked";
--source include/wait_condition.inc
unlock tables;
connection con1;
diff --git a/scripts/make_binary_distribution.sh b/scripts/make_binary_distribution.sh
index e7084d86f9c..b6404a33cc4 100644
--- a/scripts/make_binary_distribution.sh
+++ b/scripts/make_binary_distribution.sh
@@ -274,7 +274,7 @@ if [ $BASE_SYSTEM = "netware" ] ; then
rm -f $BASE/lib/*.la
fi
-copyfileto $BASE/include config.h include/*
+copyfileto $BASE/include include/*
rm -f $BASE/include/Makefile* $BASE/include/*.in $BASE/include/config-win.h
if [ $BASE_SYSTEM != "netware" ] ; then
@@ -338,7 +338,7 @@ if [ $BASE_SYSTEM != "netware" ] ; then
copyfileto $BASE/bin scripts/*
$BASE/bin/replace \@localstatedir\@ ./data \@bindir\@ ./bin \@scriptdir\@ \
./bin \@libexecdir\@ ./bin \@sbindir\@ ./bin \@prefix\@ . \@HOSTNAME\@ \
- @HOSTNAME@ \@pkgdatadir\@ ./support-files \
+ @HOSTNAME@ \@pkgdatadir\@ ./share \
< scripts/mysql_install_db.sh > $BASE/scripts/mysql_install_db
$BASE/bin/replace \@prefix\@ /usr/local/mysql \@bindir\@ ./bin \
\@sbindir\@ ./bin \@libexecdir\@ ./bin \
diff --git a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh
index bd90e6916b1..67084f416e0 100644
--- a/scripts/mysql_install_db.sh
+++ b/scripts/mysql_install_db.sh
@@ -18,26 +18,68 @@
#
# All unrecognized arguments to this script are passed to mysqld.
-in_rpm=0
-windows=0
+basedir=""
+ldata=""
+srcdir=""
+
+args=""
defaults=""
+mysqld_opt=""
user=""
-case "$1" in
- --no-defaults|--defaults-file=*|--defaults-extra-file=*)
- defaults="$1"; shift
- ;;
-esac
+force=0
+in_rpm=0
+ip_only=0
+windows=0
+
+usage()
+{
+ cat <<EOF
+Usage: $0 [OPTIONS]
+ --basedir=path The path to the MySQL installation directory.
+ --datadir=path The path to the MySQL data directory.
+ --force Causes mysql_install_db to run even if DNS does not
+ work. In that case, grant table entries that normally
+ use hostnames will use IP addresses.
+ --ldata=path The path to the MySQL data directory.
+ --rpm For internal use. This option is used by RPM files
+ during the MySQL installation process.
+ --skip-name-resolve Use IP addresses rather than hostnames when creating
+ grant table entries. This option can be useful if
+ your DNS does not work.
+ --srcdir=path For internal use. The directory under which
+ mysql_install_db looks for support files such as the
+ error message file and the file for popoulating the
+ help tables.
+ --user=user_name The login username to use for running mysqld. Files
+ and directories created by mysqld will be owned by this
+ user. You must be root to use this option. By default
+ mysqld runs using your current login name and files and
+ directories that it creates will be owned by you.
+ --windows For internal use. This option is used for creating
+ Windows distributions.
+
+All other options are passed to the mysqld program
+
+EOF
+ exit 1
+}
s_echo()
{
if test "$in_rpm" -eq 0 -a "$windows" -eq 0
then
- echo $1
+ echo "$1"
fi
}
-parse_arguments() {
+parse_arg()
+{
+ echo "$1" | sed -e 's/^[^=]*=//'
+}
+
+parse_arguments()
+{
# We only need to pass arguments through to the server if we don't
# handle them here. So, we collect unrecognized options (passed on
# the command line) into the args variable.
@@ -48,20 +90,24 @@ parse_arguments() {
shift
fi
- for arg do
+ for arg
+ do
case "$arg" in
--force) force=1 ;;
- --basedir=*) basedir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
- --srcdir=*) srcdir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
- --ldata=*|--datadir=*) ldata=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
+ --basedir=*) basedir=`parse_arg "$arg"` ;;
+ --srcdir=*) srcdir=`parse_arg "$arg"` ;;
+ --ldata=*|--datadir=*) ldata=`parse_arg "$arg"` ;;
--user=*)
# Note that the user will be passed to mysqld so that it runs
# as 'user' (crucial e.g. if log-bin=/some_other_path/
# where a chown of datadir won't help)
- user=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
+ user=`parse_arg "$arg"` ;;
--skip-name-resolve) ip_only=1 ;;
--verbose) verbose=1 ;; # Obsolete
--rpm) in_rpm=1 ;;
+ --help) usage ;;
+ --no-defaults|--defaults-file=*|--defaults-extra-file=*)
+ defaults="$arg" ;;
--windows)
# This is actually a "cross bootstrap" argument used when
@@ -89,137 +135,152 @@ parse_arguments() {
done
}
-# Get first arguments from the my.cfg file, groups [mysqld] and
-# [mysql_install_db], and then merge with the command line arguments
-if test -x ./bin/my_print_defaults
-then
- print_defaults="./bin/my_print_defaults"
-elif test -x ./extra/my_print_defaults
-then
- print_defaults="./extra/my_print_defaults"
-elif test -x @bindir@/my_print_defaults
-then
- print_defaults="@bindir@/my_print_defaults"
-elif test -x @bindir@/mysql_print_defaults
-then
- print_defaults="@bindir@/mysql_print_defaults"
-else
- print_defaults="my_print_defaults"
-fi
+# Try to find a specific file within --basedir which can either be a binary
+# release or installed source directory and return the path.
+find_in_basedir()
+{
+ case "$1" in
+ --dir)
+ return_dir=1; shift
+ ;;
+ esac
-args=
-ldata=
-execdir=
-bindir=
-basedir=
-srcdir=
-force=0
+ file=$1; shift
-parse_arguments `$print_defaults $defaults mysqld mysql_install_db`
+ for dir in "$@"
+ do
+ if test -f "$basedir/$dir/$file"
+ then
+ if test -n "$return_dir"
+ then
+ echo "$basedir/$dir"
+ else
+ echo "$basedir/$dir/$file"
+ fi
+ break
+ fi
+ done
+}
+
+missing_in_basedir()
+{
+ echo "FATAL ERROR: Could not find $* inside --basedir"
+ echo
+ echo "When using --basedir you must point either into a MySQL binary"
+ echo "distribution directory or a compiled tree previously populated"
+ echo "by 'make install'"
+}
+
+# Ok, let's go. We first need to parse arguments which are required by
+# my_print_defaults so that we can execute it first, then later re-parse
+# the command line to add any extra bits that we need.
parse_arguments PICK-ARGS-FROM-ARGV "$@"
-test -z "$ldata" && ldata=@localstatedir@
-if test -z "$basedir"
+# We can now find my_print_defaults, either in the supplied --basedir
+# location or in the installed area.
+if test -n "$basedir"
then
- basedir=@prefix@
- bindir=@bindir@
- execdir=@libexecdir@
- pkgdatadir=@pkgdatadir@
-else
- bindir="$basedir/bin"
- if test -x "$basedir/libexec/mysqld"
+ print_defaults=`find_in_basedir my_print_defaults bin extra`
+ if ! test -x "$print_defaults"
then
- execdir="$basedir/libexec"
- elif test -x "$basedir/sbin/mysqld"
+ missing_in_basedir my_print_defaults
+ exit 1
+ fi
+else
+ print_defaults="@bindir@/my_print_defaults"
+ if ! test -x "$print_defaults"
then
- execdir="$basedir/sbin"
- else
- execdir="$basedir/bin"
+ echo "FATAL ERROR: Could not find $print_defaults"
+ echo
+ echo "If you are using a binary release, you must run this script from"
+ echo "within the directory the archive extracted into. If you compiled"
+ echo "MySQL yourself you must run 'make install' first."
+ exit 1
fi
fi
-# Find SQL scripts needed for bootstrap
-fill_help_tables="fill_help_tables.sql"
-create_system_tables="mysql_system_tables.sql"
-fill_system_tables="mysql_system_tables_data.sql"
-if test -n "$srcdir"
+# Now we can get arguments from the groups [mysqld] and [mysql_install_db]
+# in the my.cfg file, then re-run to merge with command line arguments.
+parse_arguments `$print_defaults $defaults mysqld mysql_install_db`
+parse_arguments PICK-ARGS-FROM-ARGV "$@"
+
+# Path to MySQL installation directory
+if test -z "$basedir"
then
- fill_help_tables=$srcdir/scripts/$fill_help_tables
- create_system_tables=$srcdir/scripts/$create_system_tables
- fill_system_tables=$srcdir/scripts/$fill_system_tables
+ basedir="@prefix@"
+ bindir="@bindir@"
+ mysqld="@libexecdir@/mysqld"
+ pkgdatadir="@pkgdatadir@"
else
- for i in $basedir/support-files $basedir/share $basedir/share/mysql \
- $basedir/scripts `pwd` `pwd`/scripts @pkgdatadir@
- do
- if test -f $i/$fill_help_tables
+ bindir="$basedir/bin"
+ # We set up bootstrap-specific paths later, so skip this for --windows
+ if test "$windows" -eq 0
+ then
+ pkgdatadir=`find_in_basedir --dir fill_help_tables.sql share share/mysql`
+ if test -z "$pkgdatadir"
then
- pkgdatadir=$i
- break
+ missing_in_basedir fill_help_tables.sql
+ exit 1
fi
- done
-
- fill_help_tables=$pkgdatadir/$fill_help_tables
- create_system_tables=$pkgdatadir/$create_system_tables
- fill_system_tables=$pkgdatadir/$fill_system_tables
+ mysqld=`find_in_basedir mysqld libexec sbin bin`
+ if ! test -x "$mysqld"
+ then
+ missing_in_basedir mysqld
+ exit 1
+ fi
+ fi
fi
-if test ! -f $create_system_tables
+# Path to data directory
+if test -z "$ldata"
then
- echo "FATAL ERROR: Could not find SQL file '$create_system_tables' in"
- echo "@pkgdatadir@ or inside $basedir"
- exit 1;
+ ldata="@localstatedir@"
fi
-if test ! -f $fill_help_tables
+# Set up paths to SQL scripts required for bootstrap and ensure they exist.
+if test -n "$srcdir"
then
- echo "FATAL ERROR: Could not find help file '$fill_help_tables' in"
- echo "@pkgdatadir@ or inside $basedir"
- exit 1;
+ pkgdatadir="$srcdir/scripts"
fi
-if test ! -f $fill_system_tables
-then
- echo "FATAL ERROR: Could not find help file '$fill_system_tables' in"
- echo "@pkgdatadir@ or inside $basedir"
- exit 1;
-fi
+fill_help_tables="$pkgdatadir/fill_help_tables.sql"
+create_system_tables="$pkgdatadir/mysql_system_tables.sql"
+fill_system_tables="$pkgdatadir/mysql_system_tables_data.sql"
-# Find executables and paths
-mysqld=$execdir/mysqld
-mysqld_opt=""
-scriptdir=$bindir
+for f in $fill_help_tables $create_system_tables $fill_system_tables
+do
+ if test ! -f "$f"
+ then
+ echo "FATAL ERROR: Could not find SQL file '$f'"
+ exit 1
+ fi
+done
-if test "$windows" = 1
+# Set up Windows-specific paths
+if test "$windows" -eq 1
then
mysqld="./sql/mysqld"
- if test -n "$srcdir" -a -f $srcdir/sql/share/english/errmsg.sys
+ if test -n "$srcdir" -a -f "$srcdir/sql/share/english/errmsg.sys"
then
- langdir=$srcdir/sql/share/english
+ mysqld_opt="--language=$srcdir/sql/share/english"
else
- langdir=./sql/share/english
+ mysqld_opt="--language=./sql/share/english"
fi
- mysqld_opt="--language=$langdir"
- scriptdir="./scripts"
fi
-if test ! -x $mysqld
+# Make sure mysqld is available in default location (--basedir option is
+# already tested above).
+if test ! -x "$mysqld"
then
- if test "$in_rpm" = 1
- then
- echo "FATAL ERROR $mysqld not found!"
- exit 1
- else
- echo "FATAL ERROR Didn't find $mysqld"
- echo "You should do a 'make install' before executing this script"
- exit 1
- fi
+ echo "FATAL ERROR: $mysqld not found!"
+ exit 1
fi
# Try to determine the hostname
hostname=`@HOSTNAME@`
# Check if hostname is valid
-if test "$windows" = 0 -a "$in_rpm" = 0 -a $force = 0
+if test "$windows" -eq 0 -a "$in_rpm" -eq 0 -a "$force" -eq 0
then
resolved=`$bindir/resolveip $hostname 2>&1`
if [ $? -ne 0 ]
@@ -244,39 +305,36 @@ then
fi
fi
-if test "$ip_only" = "1"
+if test "$ip_only" -eq 1
then
- ip=`echo "$resolved" | awk '/ /{print $6}'`
- hostname=$ip
+ hostname=`echo "$resolved" | awk '/ /{print $6}'`
fi
# Create database directories mysql & test
-if test ! -d $ldata; then
- mkdir $ldata;
- chmod 700 $ldata ;
-fi
-if test ! -d $ldata/mysql; then
- mkdir $ldata/mysql;
- chmod 700 $ldata/mysql ;
-fi
-if test ! -d $ldata/test; then
- mkdir $ldata/test;
- chmod 700 $ldata/test ;
-fi
-if test -w / -a ! -z "$user"; then
- chown $user $ldata $ldata/mysql $ldata/test;
-fi
+for dir in $ldata $ldata/mysql $ldata/test
+do
+ if test ! -d $dir
+ then
+ mkdir -p $dir
+ chmod 700 $dir
+ fi
+ if test -w / -a ! -z "$user"
+ then
+ chown $user $dir
+ fi
+done
-if test -n "$user"; then
+if test -n "$user"
+then
args="$args --user=$user"
fi
# Peform the install of system tables
mysqld_bootstrap="${MYSQLD_BOOTSTRAP-$mysqld}"
mysqld_install_cmd_line="$mysqld_bootstrap $defaults $mysqld_opt --bootstrap \
---basedir=$basedir --datadir=$ldata --loose-skip-innodb \
---loose-skip-ndbcluster $args --max_allowed_packet=8M \
---net_buffer_length=16K"
+ --basedir=$basedir --datadir=$ldata --loose-skip-innodb \
+ --loose-skip-ndbcluster $args --max_allowed_packet=8M \
+ --net_buffer_length=16K"
# Pipe mysql_system_tables.sql to "mysqld --bootstrap"
s_echo "Installing MySQL system tables..."
@@ -284,23 +342,20 @@ if `(echo "use mysql;"; cat $create_system_tables $fill_system_tables) | $mysqld
then
s_echo "OK"
- if test -n "$fill_help_tables"
+ s_echo "Filling help tables..."
+ # Pipe fill_help_tables.sql to "mysqld --bootstrap"
+ if `(echo "use mysql;"; cat $fill_help_tables) | $mysqld_install_cmd_line`
then
- s_echo "Filling help tables..."
- # Pipe fill_help_tables.sql to "mysqld --bootstrap"
- if `(echo "use mysql;"; cat $fill_help_tables) | $mysqld_install_cmd_line`
- then
- # Fill suceeded
- s_echo "OK"
- else
- echo ""
- echo "WARNING: HELP FILES ARE NOT COMPLETELY INSTALLED!"
- echo "The \"HELP\" command might not work properly"
- echo ""
- fi
+ # Fill suceeded
+ s_echo "OK"
+ else
+ echo
+ echo "WARNING: HELP FILES ARE NOT COMPLETELY INSTALLED!"
+ echo "The \"HELP\" command might not work properly"
+ echo
fi
- s_echo ""
+ s_echo
s_echo "To start mysqld at boot time you have to copy"
s_echo "support-files/mysql.server to the right place for your system"
s_echo
@@ -319,7 +374,7 @@ then
echo "$bindir/mysqladmin -u root -h $hostname password 'new-password'"
echo "See the manual for more instructions."
- if test "$in_rpm" = "0"
+ if test "$in_rpm" -eq 0
then
echo "You can start the MySQL daemon with:"
echo "cd @prefix@ ; $bindir/mysqld_safe &"
diff --git a/scripts/mysql_setpermission.sh b/scripts/mysql_setpermission.sh
index 9699cd28047..1f5509f9955 100644
--- a/scripts/mysql_setpermission.sh
+++ b/scripts/mysql_setpermission.sh
@@ -19,13 +19,14 @@
## 1.3 Applied patch provided by Martin Mokrejs <mmokrejs@natur.cuni.cz>
## (General code cleanup, use the GRANT statement instead of updating
## the privilege tables directly, added option to revoke privileges)
+## 1.4 Remove option 6 which attempted to erroneously grant global privileges
#### TODO
#
# empty ... suggestions ... mail them to me ...
-$version="1.3";
+$version="1.4";
use DBI;
use Getopt::Long;
@@ -103,13 +104,9 @@ sub q1 { # first question ...
print " existing database and host combination (user can do\n";
print " SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,\n";
print " LOCK TABLES,CREATE TEMPORARY TABLES)\n";
- print " 6. Create/append database administrative privileges for an\n";
- print " existing database and host combination (user can do\n";
- print " SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,LOCK TABLES,\n";
- print " CREATE TEMPORARY TABLES,SHOW DATABASES,PROCESS)\n";
- print " 7. Create/append full privileges for an existing database\n";
+ print " 6. Create/append full privileges for an existing database\n";
print " and host combination (user has FULL privilege)\n";
- print " 8. Remove all privileges for for an existing database and\n";
+ print " 7. Remove all privileges for for an existing database and\n";
print " host combination.\n";
print " (user will have all permission fields set to N)\n";
print " 0. exit this program\n";
@@ -117,10 +114,10 @@ sub q1 { # first question ...
while (<STDIN>) {
$answer = $_;
chomp($answer);
- if ($answer =~ /^[12345678]$/) {
+ if ($answer =~ /^[1234567]$/) {
if ($answer == 1) {
setpwd();
- } elsif ($answer =~ /^[2345678]$/) {
+ } elsif ($answer =~ /^[234567]$/) {
addall($answer);
} else {
print "Sorry, something went wrong. With such option number you should not get here.\n\n";
@@ -233,7 +230,7 @@ sub addall {
}
}
- if ( ( !$todo ) or not ( $todo =~ m/^[2-8]$/ ) ) {
+ if ( ( !$todo ) or not ( $todo =~ m/^[2-7]$/ ) ) {
print STDERR "Sorry, select option $todo isn't known inside the program .. See ya\n";
quit();
}
@@ -256,12 +253,9 @@ sub addall {
# user privileges: SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,LOCK TABLES,CREATE TEMPORARY TABLES
$sth = $dbh->do("GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,LOCK TABLES,CREATE TEMPORARY TABLES ON $db.* TO $user@\"$host\" IDENTIFIED BY \'$pass\'") || die $dbh->errstr;
} elsif ($todo == 6) {
- # admin privileges: GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,LOCK TABLES,CREATE TEMPORARY TABLES,SHOW DATABASES,PROCESS
- $sth = $dbh->do("GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,LOCK TABLES,CREATE TEMPORARY TABLES,SHOW DATABASES,PROCESS ON $db.* TO $user@\"$host\" IDENTIFIED BY \'$pass\'") || die $dbh->errstr;
- } elsif ($todo == 7) {
# all privileges
$sth = $dbh->do("GRANT ALL ON $db.* TO \'$user\'\@\'$host\' IDENTIFIED BY \'$pass\'") || die $dbh->errstr;
- } elsif ($todo == 8) {
+ } elsif ($todo == 7) {
# all privileges set to N
$sth = $dbh->do("REVOKE ALL ON *.* FROM \'$user\'\@\'$host\'") || die $dbh->errstr;
}
diff --git a/scripts/mysql_system_tables.sql b/scripts/mysql_system_tables.sql
index f46c7c7027a..cd0882e3af4 100644
--- a/scripts/mysql_system_tables.sql
+++ b/scripts/mysql_system_tables.sql
@@ -63,16 +63,21 @@ CREATE TABLE IF NOT EXISTS proc (db char(64) collate utf8_bin DEFAULT '' NOT NUL
CREATE TABLE IF NOT EXISTS procs_priv ( Host char(60) binary DEFAULT '' NOT NULL, Db char(64) binary DEFAULT '' NOT NULL, User char(16) binary DEFAULT '' NOT NULL, Routine_name char(64) binary DEFAULT '' NOT NULL, Routine_type enum('FUNCTION','PROCEDURE') NOT NULL, Grantor char(77) DEFAULT '' NOT NULL, Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL, Timestamp timestamp(14), PRIMARY KEY (Host,Db,User,Routine_name,Routine_type), KEY Grantor (Grantor) ) engine=MyISAM CHARACTER SET utf8 COLLATE utf8_bin comment='Procedure privileges';
+-- Create general_log if CSV is enabled.
-delimiter ;;
-CREATE PROCEDURE create_general_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0; SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN CREATE TABLE IF NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT, thread_id INTEGER, server_id INTEGER, command_type VARCHAR(64), argument MEDIUMTEXT) engine=CSV CHARACTER SET utf8 comment='General log'; END IF; END;;
-CALL create_general_log_table();;
-DROP PROCEDURE create_general_log_table;;
+SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT, thread_id INTEGER, server_id INTEGER, command_type VARCHAR(64), argument MEDIUMTEXT) engine=CSV CHARACTER SET utf8 comment="General log"', 'SET @dummy = 0');
-CREATE PROCEDURE create_slow_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0; SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN CREATE TABLE IF NOT EXISTS slow_log (start_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, query_time TIME NOT NULL, lock_time TIME NOT NULL, rows_sent INTEGER NOT NULL, rows_examined INTEGER NOT NULL, db VARCHAR(512), last_insert_id INTEGER, insert_id INTEGER, server_id INTEGER, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment='Slow log'; END IF; END;;
-CALL create_slow_log_table();;
-DROP PROCEDURE create_slow_log_table;;
-delimiter ;
+PREPARE stmt FROM @str;
+EXECUTE stmt;
+DROP PREPARE stmt;
+
+-- Create slow_log if CSV is enabled.
+
+SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS slow_log (start_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, query_time TIME NOT NULL, lock_time TIME NOT NULL, rows_sent INTEGER NOT NULL, rows_examined INTEGER NOT NULL, db VARCHAR(512), last_insert_id INTEGER, insert_id INTEGER, server_id INTEGER, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment="Slow log"', 'SET @dummy = 0');
+
+PREPARE stmt FROM @str;
+EXECUTE stmt;
+DROP PREPARE stmt;
CREATE TABLE IF NOT EXISTS event ( db char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', name char(64) CHARACTER SET utf8 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, modified TIMESTAMP NOT NULL, 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') DEFAULT '' NOT NULL, comment char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', originator int(10) NOT NULL, time_zone char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM', character_set_client char(32) collate utf8_bin, collation_connection char(32) collate utf8_bin, db_collation char(32) collate utf8_bin, body_utf8 longblob, PRIMARY KEY (db, name) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT 'Events';
diff --git a/scripts/mysqld_safe.sh b/scripts/mysqld_safe.sh
index 597bf38a518..e6f7ff7b3cb 100644
--- a/scripts/mysqld_safe.sh
+++ b/scripts/mysqld_safe.sh
@@ -14,12 +14,17 @@
KILL_MYSQLD=1;
MYSQLD=
niceness=0
-# Default on, unless --log-error is specified (and before options are parsed)
-syslog=2
+# Initial logging status: error log is not open, and not using syslog
+logging=init
+want_syslog=0
+syslog_tag=
user=@MYSQLD_USER@
pid_file=
err_log=
+syslog_tag_mysqld=mysqld
+syslog_tag_mysqld_safe=mysqld_safe
+
trap '' 1 2 3 15 # we shouldn't let anyone kill us
umask 007
@@ -46,7 +51,8 @@ Usage: $0 [OPTIONS]
--nice=NICE Set the scheduling priority of mysqld
--skip-kill-mysqld Don't try to kill stray mysqld processes
--syslog Log messages to syslog with 'logger'
- --skip-syslog Log messages to error log
+ --skip-syslog Log messages to error log (default)
+ --syslog-tag=TAG Pass -t "mysqld-TAG" to 'logger'
All other options are passed to the mysqld program.
@@ -54,18 +60,46 @@ EOF
exit 1
}
+my_which ()
+{
+ save_ifs="${IFS-UNSET}"
+ IFS=:
+ for file
+ do
+ for dir in $PATH
+ do
+ if [ -f "$dir/$file" ]
+ then
+ echo "$dir/$file"
+ continue 2
+ fi
+ done
+ return 1 # Failure, didn't find file in path
+ done
+ if [ "$save_ifs" = UNSET ]
+ then
+ unset IFS
+ else
+ IFS="$save_ifs"
+ fi
+ return 0 # Success
+}
+
log_generic () {
priority="$1"
shift
msg="`date +'%y%m%d %H:%M:%S'` mysqld_safe $*"
echo "$msg"
- if [ $syslog -eq 0 ]
- then
- echo "$msg" >> "$err_log"
- else
- logger -i -t mysqld_safe -p "$priority" "$*"
- fi
+ case $logging in
+ init) ;; # Just echo the message, don't save it anywhere
+ file) echo "$msg" >> "$err_log" ;;
+ syslog) logger -t "$syslog_tag_mysqld_safe" -p "$priority" "$*" ;;
+ *)
+ echo "Internal program error (non-fatal):" \
+ " unknown logging method '$logging'" >&2
+ ;;
+ esac
}
log_error () {
@@ -78,15 +112,23 @@ log_notice () {
eval_log_error () {
cmd="$1"
- if [ $syslog -eq 0 ]
- then
- cmd="$cmd >> "`shell_quote_string "$err_log"`" 2>&1"
- else
- # mysqld often (not always) prefixes messages on stdout with a
- # timestamp in the form of '%y%m%d %H:%M:%S '; this is redundant
- # when logging via syslog, so strip it
- cmd="$cmd 2>&1 | sed -e 's/^[0-9]\{6\} [0-9:]\{8\} *//' | logger -i -t mysqld -p daemon.error"
- fi
+ case $logging in
+ file) cmd="$cmd >> "`shell_quote_string "$err_log"`" 2>&1" ;;
+ syslog)
+ # mysqld often prefixes its messages with a timestamp, which is
+ # redundant when logging to syslog (which adds its own timestamp)
+ # However, we don't strip the timestamp with sed here, because
+ # sed buffers output (only GNU sed supports a -u (unbuffered) option)
+ # which means that messages may not get sent to syslog until the
+ # mysqld process quits.
+ cmd="$cmd 2>&1 | logger -t '$syslog_tag_mysqld' -p daemon.error"
+ ;;
+ *)
+ echo "Internal program error (non-fatal):" \
+ " unknown logging method '$logging'" >&2
+ ;;
+ esac
+
#echo "Running mysqld: [$cmd]"
eval "$cmd"
}
@@ -138,8 +180,9 @@ parse_arguments() {
--nice=*) niceness="$val" ;;
--open-files-limit=*) open_files="$val" ;;
--skip-kill-mysqld*) KILL_MYSQLD=0 ;;
- --syslog) syslog=1 ;;
- --skip-syslog) syslog=0 ;;
+ --syslog) want_syslog=1 ;;
+ --skip-syslog) want_syslog=0 ;;
+ --syslog-tag=*) syslog_tag="$val" ;;
--timezone=*) TZ="$val"; export TZ; ;;
--help) usage ;;
@@ -252,7 +295,19 @@ parse_arguments `$print_defaults $defaults --loose-verbose mysqld_safe safe_mysq
parse_arguments PICK-ARGS-FROM-ARGV "$@"
# Determine what logging facility to use
-if [ -n "$err_log" -o $syslog -eq 0 ]
+
+# Ensure that 'logger' exists, if it's requested
+if [ $want_syslog -eq 1 ]
+then
+ my_which logger > /dev/null 2>&1
+ if [ $? -ne 0 ]
+ then
+ log_error "--syslog requested, but no 'logger' program found. Please ensure that 'logger' is in your PATH, or do not specify the --syslog option to mysqld_safe."
+ exit 1
+ fi
+fi
+
+if [ -n "$err_log" -o $want_syslog -eq 0 ]
then
if [ -n "$err_log" ]
then
@@ -279,14 +334,25 @@ then
append_arg_to_args "--log-error=$err_log"
- if [ $syslog -eq 1 ]
+ if [ $want_syslog -eq 1 ]
then
# User explicitly asked for syslog, so warn that it isn't used
- log_error "Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect. Logging to '$err_log'."
+ log_error "Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect."
fi
- # Don't use syslog since syslog and error log don't mix well
- syslog=0
+ # Log to err_log file
+ log_notice "Logging to '$err_log'."
+ logging=file
+else
+ if [ -n "$syslog_tag" ]
+ then
+ # Sanitize the syslog tag
+ syslog_tag=`echo "$syslog_tag" | sed -e 's/[^a-zA-Z0-9_-]/_/g'`
+ syslog_tag_mysqld_safe="${syslog_tag_mysqld_safe}-$syslog_tag"
+ syslog_tag_mysqld="${syslog_tag_mysqld}-$syslog_tag"
+ fi
+ log_notice "Logging to syslog."
+ logging=syslog
fi
USER_OPTION=""
diff --git a/server-tools/instance-manager/guardian.cc b/server-tools/instance-manager/guardian.cc
index e114496248e..b49b0ec0a00 100644
--- a/server-tools/instance-manager/guardian.cc
+++ b/server-tools/instance-manager/guardian.cc
@@ -403,6 +403,8 @@ void Guardian::init()
void Guardian::stop_instances()
{
+ static const int NUM_STOP_ATTEMPTS = 100;
+
Instance_map::Iterator instances_it(instance_map);
Instance *instance;
@@ -438,7 +440,34 @@ void Guardian::stop_instances()
/* Request mysqld to stop. */
- instance->kill_mysqld(SIGTERM);
+ bool instance_stopped= FALSE;
+
+ for (int cur_attempt= 0; cur_attempt < NUM_STOP_ATTEMPTS; ++cur_attempt)
+ {
+ if (!instance->kill_mysqld(SIGTERM))
+ {
+ instance_stopped= TRUE;
+ break;
+ }
+
+ if (!instance->is_active())
+ {
+ instance_stopped= TRUE;
+ break;
+ }
+
+ /* Sleep for 0.3 sec and check again. */
+
+ my_sleep(300000);
+ }
+
+ /*
+ Abort if we failed to stop mysqld instance. That should not happen,
+ but if it happened, we don't know what to do and prefer to have clear
+ failure with coredump.
+ */
+
+ DBUG_ASSERT(instance_stopped);
instance->unlock();
}
diff --git a/server-tools/instance-manager/instance.cc b/server-tools/instance-manager/instance.cc
index edc9c88fe9f..4a1b658737e 100644
--- a/server-tools/instance-manager/instance.cc
+++ b/server-tools/instance-manager/instance.cc
@@ -524,24 +524,17 @@ bool Instance::init(const LEX_STRING *name_arg)
/**
- Complete instance options initialization.
+ @brief Complete instance options initialization.
- SYNOPSIS
- complete_initialization()
-
- RETURN
- FALSE - ok
- TRUE - error
+ @return Error status.
+ @retval FALSE ok
+ @retval TRUE error
*/
bool Instance::complete_initialization()
{
configured= ! options.complete_initialization();
- return FALSE;
- /*
- TODO: return actual status (from
- Instance_options::complete_initialization()) here.
- */
+ return !configured;
}
/**************************************************************************
@@ -644,25 +637,24 @@ bool Instance::is_mysqld_running()
/**
- Start mysqld.
+ @brief Start mysqld.
- SYNOPSIS
- start_mysqld()
-
- DESCRIPTION
- Reset flags and start Instance Monitor thread, which will start mysqld.
+ Reset flags and start Instance Monitor thread, which will start mysqld.
- MT-NOTE: instance must be locked before calling the operation.
+ @note Instance must be locked before calling the operation.
- RETURN
- FALSE - ok
- TRUE - could not start instance
+ @return Error status code
+ @retval FALSE Ok
+ @retval TRUE Could not start instance
*/
bool Instance::start_mysqld()
{
Instance_monitor *instance_monitor;
+ if (!configured)
+ return TRUE;
+
/*
Prepare instance to start Instance Monitor thread.
@@ -779,7 +771,7 @@ bool Instance::stop_mysqld()
These operations should also be used in Guardian to manage instances.
*/
-void Instance::kill_mysqld(int signum)
+bool Instance::kill_mysqld(int signum)
{
pid_t mysqld_pid= options.load_pid();
@@ -788,7 +780,7 @@ void Instance::kill_mysqld(int signum)
log_info("Instance '%s': no pid file to send a signal (%d).",
(const char *) get_name()->str,
(int) signum);
- return;
+ return TRUE;
}
log_info("Instance '%s': sending %d to %d...",
@@ -800,7 +792,7 @@ void Instance::kill_mysqld(int signum)
{
log_info("Instance '%s': kill() failed.",
(const char *) get_name()->str);
- return;
+ return TRUE;
}
/* Kill suceeded */
@@ -812,6 +804,8 @@ void Instance::kill_mysqld(int signum)
/* After sucessful hard kill the pidfile need to be removed */
options.unlink_pidfile();
}
+
+ return FALSE;
}
diff --git a/server-tools/instance-manager/instance.h b/server-tools/instance-manager/instance.h
index e87bb49b49c..aa9c923cba1 100644
--- a/server-tools/instance-manager/instance.h
+++ b/server-tools/instance-manager/instance.h
@@ -104,7 +104,7 @@ public:
bool start_mysqld();
bool stop_mysqld();
- void kill_mysqld(int signo);
+ bool kill_mysqld(int signo);
void lock();
void unlock();
diff --git a/server-tools/instance-manager/instance_options.cc b/server-tools/instance-manager/instance_options.cc
index 5665c6f8670..8b96d6f0f96 100644
--- a/server-tools/instance-manager/instance_options.cc
+++ b/server-tools/instance-manager/instance_options.cc
@@ -156,7 +156,8 @@ int Instance_options::get_default_option(char *result, size_t result_len,
goto err;
/* +2 eats first "--" from the option string (E.g. "--datadir") */
- rc= parse_output_and_get_value((char*) cmd.buffer, option_name + 2,
+ rc= parse_output_and_get_value((char*) cmd.buffer,
+ option_name + 2, strlen(option_name + 2),
result, result_len, GET_VALUE);
err:
return rc;
@@ -194,8 +195,8 @@ bool Instance_options::fill_instance_version()
bzero(result, MAX_VERSION_LENGTH);
- if (parse_output_and_get_value((char*) cmd.buffer, "Ver", result,
- MAX_VERSION_LENGTH, GET_LINE))
+ if (parse_output_and_get_value((char*) cmd.buffer, STRING_WITH_LEN("Ver"),
+ result, MAX_VERSION_LENGTH, GET_LINE))
{
log_error("Failed to get version of '%s': unexpected output.",
(const char *) mysqld_path.str);
@@ -206,8 +207,7 @@ bool Instance_options::fill_instance_version()
{
char *start;
- /* chop the newline from the end of the version string */
- result[strlen(result) - NEWLINE_LEN]= '\0';
+
/* trim leading whitespaces */
start= result;
while (my_isspace(default_charset_info, *start))
@@ -255,7 +255,8 @@ bool Instance_options::fill_mysqld_real_path()
bzero(result, FN_REFLEN);
- if (parse_output_and_get_value((char*) cmd.buffer, "Usage: ",
+ if (parse_output_and_get_value((char*) cmd.buffer,
+ STRING_WITH_LEN("Usage: "),
result, FN_REFLEN,
GET_LINE))
{
diff --git a/server-tools/instance-manager/parse_output.cc b/server-tools/instance-manager/parse_output.cc
index 36eb5185f6b..3511589acd6 100644
--- a/server-tools/instance-manager/parse_output.cc
+++ b/server-tools/instance-manager/parse_output.cc
@@ -24,6 +24,13 @@
#include "parse.h"
#include "portability.h"
+/**************************************************************************
+ Private module implementation.
+**************************************************************************/
+
+namespace { /* no-indent */
+
+/*************************************************************************/
void trim_space(const char **text, uint *word_len)
{
@@ -39,90 +46,362 @@ void trim_space(const char **text, uint *word_len)
*word_len= (end - start)+1;
}
-/*
- Parse output of the given command
+/*************************************************************************/
- SYNOPSIS
- parse_output_and_get_value()
+/**
+ @brief A facade to the internal workings of optaining the output from an
+ executed system process.
+*/
- command the command to execue with popen.
- word the word to look for (usually an option name)
- result the buffer to store the next word (option value)
- input_buffer_len self-explanatory
- flag this equals to GET_LINE if we want to get all the line after
- the matched word and GET_VALUE otherwise.
+class Mysqld_output_parser
+{
+public:
+ Mysqld_output_parser()
+ { }
- DESCRIPTION
+ virtual ~Mysqld_output_parser()
+ { }
- Parse output of the "command". Find the "word" and return the next one
- if flag is GET_VALUE. Return the rest of the parsed string otherwise.
+public:
+ bool parse(const char *command,
+ const char *option_name_str,
+ uint option_name_length,
+ char *option_value_buf,
+ size_t option_value_buf_size,
+ enum_option_type option_type);
- RETURN
- 0 - ok, the word has been found
- 1 - error occured or the word is not found
-*/
+protected:
+ /**
+ @brief Run a process and attach stdout- and stdin-pipes to it.
-int parse_output_and_get_value(const char *command, const char *word,
- char *result, size_t input_buffer_len,
- uint flag)
-{
- FILE *output;
- uint wordlen;
- /* should be enough to store the string from the output */
- enum { MAX_LINE_LEN= 512 };
- char linebuf[MAX_LINE_LEN];
- int rc= 1;
+ @param command The path to the process to be executed
- wordlen= strlen(word);
+ @return Error status.
+ @retval TRUE An error occurred
+ @retval FALSE Operation was a success
+ */
- /*
- Successful return of popen does not tell us whether the command has been
- executed successfully: if the command was not found, we'll get EOF
- when reading the output buffer below.
+ virtual bool run_command(const char *command)= 0;
+
+
+ /**
+ @brief Read a sequence of bytes from the executed process' stdout pipe.
+
+ The sequence is terminated by either '\0', LF or CRLF tokens. The
+ terminating token is excluded from the result.
+
+ @param line_buffer A pointer to a character buffer
+ @param line_buffer_size The size of the buffer in bytes
+
+ @return Error status.
+ @retval TRUE An error occured
+ @retval FALSE Operation was a success
*/
- if (!(output= popen(command, "r")))
- goto err;
- /*
- We want fully buffered stream. We also want system to
- allocate appropriate buffer.
+ virtual bool read_line(char *line_buffer,
+ uint line_buffer_size)= 0;
+
+
+ /**
+ @brief Release any resources needed after a execution and parsing.
*/
- setvbuf(output, NULL, _IOFBF, 0);
- while (fgets(linebuf, sizeof(linebuf) - 1, output))
+ virtual bool cleanup()= 0;
+};
+
+/*************************************************************************/
+
+bool Mysqld_output_parser::parse(const char *command,
+ const char *option_name_str,
+ uint option_name_length,
+ char *option_value_buf,
+ size_t option_value_buf_size,
+ enum_option_type option_type)
+{
+ /* should be enough to store the string from the output */
+ const int LINE_BUFFER_SIZE= 512;
+ char line_buffer[LINE_BUFFER_SIZE];
+
+ if (run_command(command))
+ return TRUE;
+
+ while (true)
{
+ if (read_line(line_buffer, LINE_BUFFER_SIZE))
+ {
+ cleanup();
+ return TRUE;
+ }
+
uint found_word_len= 0;
- char *linep= linebuf;
+ char *linep= line_buffer;
+
+ line_buffer[sizeof(line_buffer) - 1]= '\0'; /* safety */
+
+ /* Find the word(s) we are looking for in the line. */
- linebuf[sizeof(linebuf) - 1]= '\0'; /* safety */
+ linep= strstr(linep, option_name_str);
- /*
- Find the word(s) we are looking for in the line
- */
- if ((linep= strstr(linep, word)))
+ if (!linep)
+ continue;
+
+ linep+= option_name_length;
+
+ switch (option_type)
{
- /*
- If we have found our word(s), then move linep past the word(s)
- */
- linep+= wordlen;
- if (flag & GET_VALUE)
+ case GET_VALUE:
+ trim_space((const char**) &linep, &found_word_len);
+
+ if (option_value_buf_size <= found_word_len)
{
- trim_space((const char**) &linep, &found_word_len);
- if (input_buffer_len <= found_word_len)
- goto err;
- strmake(result, linep, found_word_len);
+ cleanup();
+ return TRUE;
}
- else /* currently there are only two options */
- strmake(result, linep, input_buffer_len - 1);
- rc= 0;
+
+ strmake(option_value_buf, linep, found_word_len);
+
+ break;
+
+ case GET_LINE:
+ strmake(option_value_buf, linep, option_value_buf_size - 1);
+
break;
}
+
+ cleanup();
+
+ return FALSE;
}
+}
+
+/**************************************************************************
+ Platform-specific implementation: UNIX.
+**************************************************************************/
+
+#ifndef __WIN__
+
+class Mysqld_output_parser_unix : public Mysqld_output_parser
+{
+public:
+ Mysqld_output_parser_unix() :
+ m_stdout(NULL)
+ { }
+
+protected:
+ virtual bool run_command(const char *command);
+
+ virtual bool read_line(char *line_buffer,
+ uint line_buffer_size);
+
+ virtual bool cleanup();
+
+private:
+ FILE *m_stdout;
+};
+
+bool Mysqld_output_parser_unix::run_command(const char *command)
+{
+ if (!(m_stdout= popen(command, "r")))
+ return TRUE;
- /* we are not interested in the termination status */
- pclose(output);
+ /*
+ We want fully buffered stream. We also want system to allocate
+ appropriate buffer.
+ */
-err:
- return rc;
+ setvbuf(m_stdout, NULL, _IOFBF, 0);
+
+ return FALSE;
}
+bool Mysqld_output_parser_unix::read_line(char *line_buffer,
+ uint line_buffer_size)
+{
+ char *retbuff = fgets(line_buffer, line_buffer_size, m_stdout);
+ /* Remove any tailing new line charaters */
+ if (line_buffer[line_buffer_size-1] == LF)
+ line_buffer[line_buffer_size-1]= '\0';
+ return (retbuff == NULL);
+}
+
+bool Mysqld_output_parser_unix::cleanup()
+{
+ if (m_stdout)
+ pclose(m_stdout);
+
+ return FALSE;
+}
+
+#else /* Windows */
+
+/**************************************************************************
+ Platform-specific implementation: Windows.
+**************************************************************************/
+
+class Mysqld_output_parser_win : public Mysqld_output_parser
+{
+public:
+ Mysqld_output_parser_win() :
+ m_internal_buffer(NULL),
+ m_internal_buffer_offset(0),
+ m_internal_buffer_size(0)
+ { }
+
+protected:
+ virtual bool run_command(const char *command);
+ virtual bool read_line(char *line_buffer,
+ uint line_buffer_size);
+ virtual bool cleanup();
+
+private:
+ HANDLE m_h_child_stdout_wr;
+ HANDLE m_h_child_stdout_rd;
+ uint m_internal_buffer_offset;
+ uint m_internal_buffer_size;
+ char *m_internal_buffer;
+};
+
+bool Mysqld_output_parser_win::run_command(const char *command)
+{
+ BOOL op_status;
+
+ SECURITY_ATTRIBUTES sa_attr;
+ sa_attr.nLength= sizeof(SECURITY_ATTRIBUTES);
+ sa_attr.bInheritHandle= TRUE;
+ sa_attr.lpSecurityDescriptor= NULL;
+
+ op_status= CreatePipe(&m_h_child_stdout_rd,
+ &m_h_child_stdout_wr,
+ &sa_attr,
+ 0 /* Use system-default buffer size. */);
+
+ if (!op_status)
+ return TRUE;
+
+ SetHandleInformation(m_h_child_stdout_rd, HANDLE_FLAG_INHERIT, 0);
+
+ STARTUPINFO si_start_info;
+ ZeroMemory(&si_start_info, sizeof(STARTUPINFO));
+ si_start_info.cb= sizeof(STARTUPINFO);
+ si_start_info.hStdError= m_h_child_stdout_wr;
+ si_start_info.hStdOutput= m_h_child_stdout_wr;
+ si_start_info.dwFlags|= STARTF_USESTDHANDLES;
+
+ PROCESS_INFORMATION pi_proc_info;
+
+ op_status= CreateProcess(NULL, /* Application name. */
+ (char*)command, /* Command line. */
+ NULL, /* Process security attributes. */
+ NULL, /* Primary thread security attr.*/
+ TRUE, /* Handles are inherited. */
+ 0, /* Creation flags. */
+ NULL, /* Use parent's environment. */
+ NULL, /* Use parent's curr. directory. */
+ &si_start_info, /* STARTUPINFO pointer. */
+ &pi_proc_info); /* Rec. PROCESS_INFORMATION. */
+
+ if (!op_status)
+ {
+ CloseHandle(m_h_child_stdout_rd);
+ CloseHandle(m_h_child_stdout_wr);
+
+ return TRUE;
+ }
+
+ /* Close unnessary handles. */
+
+ CloseHandle(pi_proc_info.hProcess);
+ CloseHandle(pi_proc_info.hThread);
+
+ return FALSE;
+}
+
+bool Mysqld_output_parser_win::read_line(char *line_buffer,
+ uint line_buffer_size)
+{
+ DWORD dw_read_count= m_internal_buffer_size;
+ bzero(line_buffer,line_buffer_size);
+ char *buff_ptr= line_buffer;
+ char ch;
+
+ while ((unsigned)(buff_ptr - line_buffer) < line_buffer_size)
+ {
+ do
+ {
+ ReadFile(m_h_child_stdout_rd, &ch,
+ 1, &dw_read_count, NULL);
+ } while ((ch == CR || ch == LF) && buff_ptr == line_buffer);
+
+ if (dw_read_count == 0)
+ return TRUE;
+
+ if (ch == CR || ch == LF)
+ break;
+
+ *buff_ptr++ = ch;
+ }
+
+ return FALSE;
+}
+
+bool Mysqld_output_parser_win::cleanup()
+{
+ /* Close all handles. */
+
+ CloseHandle(m_h_child_stdout_wr);
+ CloseHandle(m_h_child_stdout_rd);
+
+ return FALSE;
+}
+#endif
+
+/*************************************************************************/
+
+} /* End of private module implementation. */
+
+/*************************************************************************/
+
+/**
+ @brief Parse output of the given command
+
+ @param command The command to execute.
+ @param option_name_str Option name.
+ @param option_name_length Length of the option name.
+ @param[out] option_value_buf The buffer to store option value.
+ @param option_value_buf_size Size of the option value buffer.
+ @param option_type Type of the option:
+ - GET_LINE if we want to get all the
+ line after the option name;
+ - GET_VALUE otherwise.
+
+ Execute the process by running "command". Find the "option name" and
+ return the next word if "option_type" is GET_VALUE. Return the rest of
+ the parsed string otherwise.
+
+ @note This function has a separate windows implementation.
+
+ @return The error status.
+ @retval FALSE Ok, the option name has been found.
+ @retval TRUE Error occured or the option name is not found.
+*/
+
+bool parse_output_and_get_value(const char *command,
+ const char *option_name_str,
+ uint option_name_length,
+ char *option_value_buf,
+ size_t option_value_buf_size,
+ enum_option_type option_type)
+{
+#ifndef __WIN__
+ Mysqld_output_parser_unix parser;
+#else /* __WIN__ */
+ Mysqld_output_parser_win parser;
+#endif
+
+ return parser.parse(command,
+ option_name_str,
+ option_name_length,
+ option_value_buf,
+ option_value_buf_size,
+ option_type);
+}
diff --git a/server-tools/instance-manager/parse_output.h b/server-tools/instance-manager/parse_output.h
index 8851934f230..41618f643a3 100644
--- a/server-tools/instance-manager/parse_output.h
+++ b/server-tools/instance-manager/parse_output.h
@@ -17,11 +17,17 @@
#include <my_global.h>
-#define GET_VALUE 1
-#define GET_LINE 2
+enum enum_option_type
+{
+ GET_VALUE = 1,
+ GET_LINE
+};
-int parse_output_and_get_value(const char *command, const char *word,
- char *result, size_t input_buffer_len,
- uint flag);
+bool parse_output_and_get_value(const char *command,
+ const char *option_name_str,
+ uint option_name_length,
+ char *option_value_buf,
+ size_t option_value_buf_size,
+ enum_option_type option_type);
#endif /* INCLUDES_MYSQL_INSTANCE_MANAGER_PARSE_OUTPUT_H */
diff --git a/server-tools/instance-manager/portability.h b/server-tools/instance-manager/portability.h
index eb677a0135c..990e6140a9e 100644
--- a/server-tools/instance-manager/portability.h
+++ b/server-tools/instance-manager/portability.h
@@ -48,11 +48,16 @@ typedef int pid_t;
#define NEWLINE "\r\n"
#define NEWLINE_LEN 2
+const char CR = '\r';
+const char LF = '\n';
+
#else /* ! __WIN__ */
#define NEWLINE "\n"
#define NEWLINE_LEN 1
+const char LF = '\n';
+
#endif /* __WIN__ */
#endif /* INCLUDES_MYSQL_INSTANCE_MANAGER_PORTABILITY_H */
diff --git a/server-tools/instance-manager/thread_registry.cc b/server-tools/instance-manager/thread_registry.cc
index b06c1240d92..72d81523022 100644
--- a/server-tools/instance-manager/thread_registry.cc
+++ b/server-tools/instance-manager/thread_registry.cc
@@ -64,11 +64,14 @@ Thread_registry::~Thread_registry()
/* Check that no one uses the repository. */
pthread_mutex_lock(&LOCK_thread_registry);
- if (head.next != &head)
- log_error("Not all threads died properly\n");
+ for (Thread_info *ti= head.next; ti != &head; ti= ti->next)
+ {
+ log_error("Thread_registry: unregistered thread: %lu.",
+ (unsigned long) ti->thread_id);
+ }
+
/* All threads must unregister */
- // Disabled assert temporarily - BUG#28030
- // DBUG_ASSERT(head.next == &head);
+ DBUG_ASSERT(head.next == &head);
pthread_mutex_unlock(&LOCK_thread_registry);
pthread_cond_destroy(&COND_thread_registry_is_empty);
diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
index a8aa7d70586..c792e10c3af 100644
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
@@ -143,6 +143,10 @@ ADD_CUSTOM_COMMAND(
)
ADD_DEPENDENCIES(mysqld${MYSQLD_EXE_SUFFIX} gen_lex_hash)
+# Remove the auto-generated files as part of 'Clean Solution'
+SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES
+ "lex_hash.h;message.rc;message.h;sql_yacc.h;sql_yacc.cc")
+
ADD_LIBRARY(udf_example MODULE udf_example.c udf_example.def)
ADD_DEPENDENCIES(udf_example strings)
TARGET_LINK_LIBRARIES(udf_example wsock32)
diff --git a/sql/event_data_objects.cc b/sql/event_data_objects.cc
index 7b58c10079a..144a87e13f6 100644
--- a/sql/event_data_objects.cc
+++ b/sql/event_data_objects.cc
@@ -979,17 +979,18 @@ Event_queue_element::load_from_row(THD *thd, TABLE *table)
DBUG_RETURN(TRUE);
starts_null= table->field[ET_FIELD_STARTS]->is_null();
+ my_bool not_used= FALSE;
if (!starts_null)
{
table->field[ET_FIELD_STARTS]->get_date(&time, TIME_NO_ZERO_DATE);
- starts= sec_since_epoch_TIME(&time);
+ starts= my_tz_OFFSET0->TIME_to_gmt_sec(&time,&not_used);
}
ends_null= table->field[ET_FIELD_ENDS]->is_null();
if (!ends_null)
{
table->field[ET_FIELD_ENDS]->get_date(&time, TIME_NO_ZERO_DATE);
- ends= sec_since_epoch_TIME(&time);
+ ends= my_tz_OFFSET0->TIME_to_gmt_sec(&time,&not_used);
}
if (!table->field[ET_FIELD_INTERVAL_EXPR]->is_null())
@@ -1007,7 +1008,7 @@ Event_queue_element::load_from_row(THD *thd, TABLE *table)
if (table->field[ET_FIELD_EXECUTE_AT]->get_date(&time,
TIME_NO_ZERO_DATE))
DBUG_RETURN(TRUE);
- execute_at= sec_since_epoch_TIME(&time);
+ execute_at= my_tz_OFFSET0->TIME_to_gmt_sec(&time,&not_used);
}
/*
@@ -1039,7 +1040,7 @@ Event_queue_element::load_from_row(THD *thd, TABLE *table)
{
table->field[ET_FIELD_LAST_EXECUTED]->get_date(&time,
TIME_NO_ZERO_DATE);
- last_executed= sec_since_epoch_TIME(&time);
+ last_executed= my_tz_OFFSET0->TIME_to_gmt_sec(&time,&not_used);
}
last_executed_changed= FALSE;
diff --git a/sql/event_db_repository.cc b/sql/event_db_repository.cc
index a16a04739e2..b7bcb6344fd 100644
--- a/sql/event_db_repository.cc
+++ b/sql/event_db_repository.cc
@@ -250,7 +250,7 @@ mysql_event_fill_row(THD *thd,
if (!et->starts_null)
{
MYSQL_TIME time;
- my_tz_UTC->gmt_sec_to_TIME(&time, et->starts);
+ my_tz_OFFSET0->gmt_sec_to_TIME(&time, et->starts);
fields[ET_FIELD_STARTS]->set_notnull();
fields[ET_FIELD_STARTS]->store_time(&time, MYSQL_TIMESTAMP_DATETIME);
@@ -259,7 +259,7 @@ mysql_event_fill_row(THD *thd,
if (!et->ends_null)
{
MYSQL_TIME time;
- my_tz_UTC->gmt_sec_to_TIME(&time, et->ends);
+ my_tz_OFFSET0->gmt_sec_to_TIME(&time, et->ends);
fields[ET_FIELD_ENDS]->set_notnull();
fields[ET_FIELD_ENDS]->store_time(&time, MYSQL_TIMESTAMP_DATETIME);
@@ -278,7 +278,7 @@ mysql_event_fill_row(THD *thd,
fields[ET_FIELD_ENDS]->set_null();
MYSQL_TIME time;
- my_tz_UTC->gmt_sec_to_TIME(&time, et->execute_at);
+ my_tz_OFFSET0->gmt_sec_to_TIME(&time, et->execute_at);
fields[ET_FIELD_EXECUTE_AT]->set_notnull();
fields[ET_FIELD_EXECUTE_AT]->
@@ -1004,7 +1004,7 @@ update_timing_fields_for_event(THD *thd,
if (update_last_executed)
{
MYSQL_TIME time;
- my_tz_UTC->gmt_sec_to_TIME(&time, last_executed);
+ my_tz_OFFSET0->gmt_sec_to_TIME(&time, last_executed);
fields[ET_FIELD_LAST_EXECUTED]->set_notnull();
fields[ET_FIELD_LAST_EXECUTED]->store_time(&time,
diff --git a/sql/event_queue.cc b/sql/event_queue.cc
index 634cc764d74..04449dd48a1 100644
--- a/sql/event_queue.cc
+++ b/sql/event_queue.cc
@@ -740,7 +740,7 @@ Event_queue::dump_internal_status()
printf("WOC : %s\n", waiting_on_cond? "YES":"NO");
MYSQL_TIME time;
- my_tz_UTC->gmt_sec_to_TIME(&time, next_activation_at);
+ my_tz_OFFSET0->gmt_sec_to_TIME(&time, next_activation_at);
if (time.year != 1970)
printf("Next activation : %04d-%02d-%02d %02d:%02d:%02d\n",
time.year, time.month, time.day, time.hour, time.minute, time.second);
diff --git a/sql/handler.cc b/sql/handler.cc
index 3b03efa080a..54ae258d560 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -1516,34 +1516,6 @@ THD *handler::ha_thd(void) const
}
-bool handler::check_if_log_table_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table)
-{
- /*
- Deny locking of the log tables, which is incompatible with
- concurrent insert. The routine is not called if the table is
- being locked from a logger THD (general_log_thd or slow_log_thd)
- or from a privileged thread (see log.cc for details)
- */
- if (table->s->log_table &&
- sql_command != SQLCOM_TRUNCATE &&
- sql_command != SQLCOM_ALTER_TABLE &&
- !(sql_command == SQLCOM_FLUSH &&
- type & REFRESH_LOG) &&
- (table->reginfo.lock_type >= TL_READ_NO_INSERT))
- {
- /*
- The check >= TL_READ_NO_INSERT denies all write locks
- plus the only read lock (TL_READ_NO_INSERT itself)
- */
- table->reginfo.lock_type == TL_READ_NO_INSERT ?
- my_error(ER_CANT_READ_LOCK_LOG_TABLE, MYF(0)) :
- my_error(ER_CANT_WRITE_LOCK_LOG_TABLE, MYF(0));
- return FALSE;
- }
- return TRUE;
-}
-
/** @brief
Open database-handler.
@@ -3687,6 +3659,7 @@ int handler::ha_write_row(uchar *buf)
return 0;
}
+
int handler::ha_update_row(const uchar *old_data, uchar *new_data)
{
int error;
diff --git a/sql/handler.h b/sql/handler.h
index 172f43b6b59..ddea6c3a34c 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -1021,6 +1021,7 @@ public:
uint ref_length;
FT_INFO *ft_handler;
enum {NONE=0, INDEX, RND} inited;
+ bool locked;
bool implicit_emptied; /* Can be !=0 only if HEAP */
const COND *pushed_cond;
/*
@@ -1051,11 +1052,13 @@ public:
estimation_rows_to_insert(0), ht(ht_arg),
ref(0), key_used_on_scan(MAX_KEY), active_index(MAX_KEY),
ref_length(sizeof(my_off_t)),
- ft_handler(0), inited(NONE), implicit_emptied(0),
+ ft_handler(0), inited(NONE),
+ locked(FALSE), implicit_emptied(0),
pushed_cond(0), next_insert_id(0), insert_id_for_cur_row(0)
{}
virtual ~handler(void)
{
+ DBUG_ASSERT(locked == FALSE);
/* TODO: DBUG_ASSERT(inited == NONE); */
}
virtual handler *clone(MEM_ROOT *mem_root);
@@ -1064,44 +1067,6 @@ public:
{
cached_table_flags= table_flags();
}
- /*
- Check whether a handler allows to lock the table.
-
- SYNOPSIS
- check_if_locking_is_allowed()
- thd Handler of the thread, trying to lock the table
- table Table handler to check
- count Total number of tables to be locked
- current Index of the current table in the list of the tables
- to be locked.
- system_count Pointer to the counter of system tables seen thus
- far.
- called_by_privileged_thread TRUE if called from a logger THD
- (general_log_thd or slow_log_thd)
- or by a privileged thread, which
- has the right to lock log tables.
-
- DESCRIPTION
- Check whether a handler allows to lock the table. For instance,
- MyISAM does not allow to lock mysql.proc along with other tables.
- This limitation stems from the fact that MyISAM does not support
- row-level locking and we have to add this limitation to avoid
- deadlocks.
-
- RETURN
- TRUE Locking is allowed
- FALSE Locking is not allowed. The error was thrown.
- */
- virtual bool check_if_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table,
- uint count, uint current,
- uint *system_count,
- bool called_by_privileged_thread)
- {
- return TRUE;
- }
- bool check_if_log_table_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table);
int ha_open(TABLE *table, const char *name, int mode, int test_if_locked);
void adjust_next_insert_id_after_explicit_value(ulonglong nr);
int update_auto_increment();
@@ -1658,8 +1623,10 @@ public:
/* lock_count() can be more than one if the table is a MERGE */
virtual uint lock_count(void) const { return 1; }
- /*
- NOTE that one can NOT rely on table->in_use in store_lock(). It may
+ /**
+ Is not invoked for non-transactional temporary tables.
+
+ @note that one can NOT rely on table->in_use in store_lock(). It may
refer to a different thread if called from mysql_lock_abort_for_thread().
*/
virtual THR_LOCK_DATA **store_lock(THD *thd,
@@ -1790,6 +1757,29 @@ private:
overridden by the storage engine class. To call these methods, use
the corresponding 'ha_*' method above.
*/
+
+ /**
+ Is not invoked for non-transactional temporary tables.
+
+ Tells the storage engine that we intend to read or write data
+ from the table. This call is prefixed with a call to handler::store_lock()
+ and is invoked only for those handler instances that stored the lock.
+
+ Calls to rnd_init/index_init are prefixed with this call. When table
+ IO is complete, we call external_lock(F_UNLCK).
+ A storage engine writer should expect that each call to
+ ::external_lock(F_[RD|WR]LOCK is followed by a call to
+ ::external_lock(F_UNLCK). If it is not, it is a bug in MySQL.
+
+ The name and signature originate from the first implementation
+ in MyISAM, which would call fcntl to set/clear an advisory
+ lock on the data file in this method.
+
+ @param lock_type F_RDLCK, F_WRLCK, F_UNLCK
+
+ @return non-0 in case of failure, 0 in case of success.
+ When lock_type is F_UNLCK, the return value is ignored.
+ */
virtual int external_lock(THD *thd __attribute__((unused)),
int lock_type __attribute__((unused)))
{
diff --git a/sql/item_create.cc b/sql/item_create.cc
index fa15b992e5c..06996cdaa3b 100644
--- a/sql/item_create.cc
+++ b/sql/item_create.cc
@@ -2861,6 +2861,7 @@ Item*
Create_func_connection_id::create(THD *thd)
{
thd->lex->safe_to_cache_query= 0;
+ thd->thread_specific_used= TRUE;
return new (thd->mem_root) Item_func_connection_id();
}
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 4012371bedb..69b55228234 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -649,16 +649,7 @@ bool Item_func_connection_id::fix_fields(THD *thd, Item **ref)
{
if (Item_int_func::fix_fields(thd, ref))
return TRUE;
-
- /*
- To replicate CONNECTION_ID() properly we should use
- pseudo_thread_id on slave, which contains the value of thread_id
- on master.
- */
- value= ((thd->slave_thread) ?
- thd->variables.pseudo_thread_id :
- thd->thread_id);
-
+ value= thd->variables.pseudo_thread_id;
return FALSE;
}
diff --git a/sql/lock.cc b/sql/lock.cc
index 63d0807b975..08ff90ce983 100644
--- a/sql/lock.cc
+++ b/sql/lock.cc
@@ -116,16 +116,90 @@ static void print_lock_error(int error, const char *);
static int thr_lock_errno_to_mysql[]=
{ 0, 1, ER_LOCK_WAIT_TIMEOUT, ER_LOCK_DEADLOCK };
+/**
+ Perform semantic checks for mysql_lock_tables.
+ @param thd The current thread
+ @param tables The tables to lock
+ @param count The number of tables to lock
+ @param flags Lock flags
+ @return 0 if all the check passed, non zero if a check failed.
+*/
+int mysql_lock_tables_check(THD *thd, TABLE **tables, uint count, uint flags)
+{
+ bool log_table_write_query;
+ uint system_count;
+ uint i;
+
+ DBUG_ENTER("mysql_lock_tables_check");
+
+ system_count= 0;
+ log_table_write_query= (is_log_table_write_query(thd->lex->sql_command)
+ || ((flags & MYSQL_LOCK_PERF_SCHEMA) != 0));
+
+ for (i=0 ; i<count; i++)
+ {
+ TABLE *t= tables[i];
+
+ /* Protect against 'fake' partially initialized TABLE_SHARE */
+ DBUG_ASSERT(t->s->table_category != TABLE_UNKNOWN_CATEGORY);
+
+ /*
+ Table I/O to performance schema tables is performed
+ only internally by the server implementation.
+ When a user is requesting a lock, the following
+ constraints are enforced:
+ */
+ if (t->s->require_write_privileges() &&
+ ! log_table_write_query)
+ {
+ /*
+ A user should not be able to prevent writes,
+ or hold any type of lock in a session,
+ since this would be a DOS attack.
+ */
+ if ((t->reginfo.lock_type >= TL_READ_NO_INSERT)
+ || (thd->lex->sql_command == SQLCOM_LOCK_TABLES))
+ {
+ my_error(ER_CANT_LOCK_LOG_TABLE, MYF(0));
+ DBUG_RETURN(1);
+ }
+ }
+
+ if ((t->s->table_category == TABLE_CATEGORY_SYSTEM) &&
+ (t->reginfo.lock_type >= TL_WRITE_ALLOW_WRITE))
+ {
+ system_count++;
+ }
+ }
+
+ /*
+ Locking of system tables is restricted:
+ locking a mix of system and non-system tables in the same lock
+ is prohibited, to prevent contention.
+ */
+ if ((system_count > 0) && (system_count < count))
+ {
+ my_error(ER_WRONG_LOCK_OF_SYSTEM_TABLE, MYF(0));
+ DBUG_RETURN(1);
+ }
+
+ DBUG_RETURN(0);
+}
+
MYSQL_LOCK *mysql_lock_tables(THD *thd, TABLE **tables, uint count,
uint flags, bool *need_reopen)
{
MYSQL_LOCK *sql_lock;
TABLE *write_lock_used;
int rc;
+
DBUG_ENTER("mysql_lock_tables");
*need_reopen= FALSE;
+ if (mysql_lock_tables_check(thd, tables, count, flags))
+ DBUG_RETURN (NULL);
+
for (;;)
{
if (! (sql_lock= get_lock_data(thd, tables, count, GET_LOCK_STORE_LOCKS,
@@ -175,7 +249,8 @@ MYSQL_LOCK *mysql_lock_tables(THD *thd, TABLE **tables, uint count,
thd->proc_info="System lock";
DBUG_PRINT("info", ("thd->proc_info %s", thd->proc_info));
- if (lock_external(thd, tables, count))
+ if (sql_lock->table_count && lock_external(thd, sql_lock->table,
+ sql_lock->table_count))
{
/* Clear the lock type of all lock data to avoid reusage. */
reset_lock_data(sql_lock);
@@ -271,6 +346,7 @@ static int lock_external(THD *thd, TABLE **tables, uint count)
((*tables)->reginfo.lock_type >= TL_READ &&
(*tables)->reginfo.lock_type <= TL_READ_NO_INSERT))
lock_type=F_RDLCK;
+
if ((error=(*tables)->file->ha_external_lock(thd,lock_type)))
{
print_lock_error(error, (*tables)->file->table_type());
@@ -379,10 +455,28 @@ void mysql_unlock_read_tables(THD *thd, MYSQL_LOCK *sql_lock)
}
+/**
+ Try to find the table in the list of locked tables.
+ In case of success, unlock the table and remove it from this list.
+
+ @note This function has a legacy side effect: the table is
+ unlocked even if it is not found in the locked list.
+ It's not clear if this side effect is intentional or still
+ desirable. It might lead to unmatched calls to
+ unlock_external(). Moreover, a discrepancy can be left
+ unnoticed by the storage engine, because in
+ unlock_external() we call handler::external_lock(F_UNLCK) only
+ if table->current_lock is not F_UNLCK.
+
+ @param always_unlock specify explicitly if the legacy side
+ effect is desired.
+*/
-void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table)
+void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table,
+ bool always_unlock)
{
- mysql_unlock_some_tables(thd, &table,1);
+ if (always_unlock == TRUE)
+ mysql_unlock_some_tables(thd, &table, /* table count */ 1);
if (locked)
{
reg1 uint i;
@@ -396,6 +490,10 @@ void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table)
DBUG_ASSERT(table->lock_position == i);
+ /* Unlock if not yet unlocked */
+ if (always_unlock == FALSE)
+ mysql_unlock_some_tables(thd, &table, /* table count */ 1);
+
/* Decrement table_count in advance, making below expressions easier */
old_tables= --locked->table_count;
@@ -445,7 +543,8 @@ void mysql_lock_downgrade_write(THD *thd, TABLE *table,
{
MYSQL_LOCK *locked;
TABLE *write_lock_used;
- if ((locked = get_lock_data(thd,&table,1,1,&write_lock_used)))
+ if ((locked = get_lock_data(thd, &table, 1, GET_LOCK_UNLOCK,
+ &write_lock_used)))
{
for (uint i=0; i < locked->lock_count; i++)
thr_downgrade_write_lock(locked->locks[i], new_lock_type);
@@ -704,25 +803,19 @@ static MYSQL_LOCK *get_lock_data(THD *thd, TABLE **table_ptr, uint count,
TABLE **to, **table_buf;
DBUG_ENTER("get_lock_data");
+ DBUG_ASSERT((flags == GET_LOCK_UNLOCK) || (flags == GET_LOCK_STORE_LOCKS));
+
DBUG_PRINT("info", ("count %d", count));
*write_lock_used=0;
- uint system_count= 0;
for (i=tables=lock_count=0 ; i < count ; i++)
{
- if (table_ptr[i]->s->tmp_table != NON_TRANSACTIONAL_TMP_TABLE)
+ TABLE *t= table_ptr[i];
+
+ if (t->s->tmp_table != NON_TRANSACTIONAL_TMP_TABLE)
{
- tables+=table_ptr[i]->file->lock_count();
+ tables+= t->file->lock_count();
lock_count++;
}
- /*
- Check if we can lock the table. For some tables we cannot do that
- beacause of handler-specific locking issues.
- */
- if (!table_ptr[i]-> file->
- check_if_locking_is_allowed(thd->lex->sql_command, thd->lex->type,
- table_ptr[i], count, i, &system_count,
- logger.is_privileged_thread(thd)))
- DBUG_RETURN(0);
}
/*
diff --git a/sql/log.cc b/sql/log.cc
index 415f98fd406..00ef726f037 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -57,6 +57,35 @@ static int binlog_commit(handlerton *hton, THD *thd, bool all);
static int binlog_rollback(handlerton *hton, THD *thd, bool all);
static int binlog_prepare(handlerton *hton, THD *thd, bool all);
+/**
+ Silence all errors and warnings reported when performing a write
+ to a log table.
+ Errors and warnings are not reported to the client or SQL exception
+ handlers, so that the presence of logging does not interfere and affect
+ the logic of an application.
+*/
+class Silence_log_table_errors : public Internal_error_handler
+{
+public:
+ Silence_log_table_errors()
+ {}
+
+ virtual ~Silence_log_table_errors() {}
+
+ virtual bool handle_error(uint sql_errno,
+ MYSQL_ERROR::enum_warning_level level,
+ THD *thd);
+};
+
+bool
+Silence_log_table_errors::handle_error(uint /* sql_errno */,
+ MYSQL_ERROR::enum_warning_level /* level */,
+ THD * /* thd */)
+{
+ return TRUE;
+}
+
+
sql_print_message_func sql_print_message_handlers[3] =
{
sql_print_information,
@@ -187,6 +216,19 @@ public:
handlerton *binlog_hton;
+bool LOGGER::is_log_table_enabled(uint log_table_type)
+{
+ switch (log_table_type) {
+ case QUERY_LOG_SLOW:
+ return (table_log_handler != NULL) && opt_slow_log;
+ case QUERY_LOG_GENERAL:
+ return (table_log_handler != NULL) && opt_log ;
+ default:
+ DBUG_ASSERT(0);
+ return FALSE; /* make compiler happy */
+ }
+}
+
/* Check if a given table is opened log table */
int check_if_log_table(uint db_len, const char *db, uint table_name_len,
@@ -200,211 +242,38 @@ int check_if_log_table(uint db_len, const char *db, uint table_name_len,
if (table_name_len == 11 && !(lower_case_table_names ?
my_strcasecmp(system_charset_info,
table_name, "general_log") :
- strcmp(table_name, "general_log")) &&
- (!check_if_opened || logger.is_log_table_enabled(QUERY_LOG_GENERAL)))
- return QUERY_LOG_GENERAL;
- else
- if (table_name_len == 8 && !(lower_case_table_names ?
- my_strcasecmp(system_charset_info, table_name, "slow_log") :
- strcmp(table_name, "slow_log")) &&
- (!check_if_opened ||logger.is_log_table_enabled(QUERY_LOG_SLOW)))
+ strcmp(table_name, "general_log")))
+ {
+ if (!check_if_opened || logger.is_log_table_enabled(QUERY_LOG_GENERAL))
+ return QUERY_LOG_GENERAL;
+ return 0;
+ }
+
+ if (table_name_len == 8 && !(lower_case_table_names ?
+ my_strcasecmp(system_charset_info, table_name, "slow_log") :
+ strcmp(table_name, "slow_log")))
+ {
+ if (!check_if_opened || logger.is_log_table_enabled(QUERY_LOG_SLOW))
return QUERY_LOG_SLOW;
+ return 0;
+ }
}
return 0;
}
-/*
- Open log table of a given type (general or slow log)
-
- SYNOPSIS
- open_log_table()
-
- log_table_type type of the log table to open: QUERY_LOG_GENERAL
- or QUERY_LOG_SLOW
-
- DESCRIPTION
-
- The function opens a log table and marks it as such. Log tables are open
- during the whole time, while server is running. Except for the moments
- when they have to be reopened: during FLUSH LOGS and TRUNCATE. This
- function is invoked directly only once during startup. All subsequent
- calls happen through reopen_log_table(), which performs additional check.
-
- RETURN
- FALSE - OK
- TRUE - error occured
-*/
-
-bool Log_to_csv_event_handler::open_log_table(uint log_table_type)
-{
- THD *log_thd, *curr= current_thd;
- TABLE_LIST *table;
- bool error= FALSE;
- DBUG_ENTER("open_log_table");
-
- switch (log_table_type) {
- case QUERY_LOG_GENERAL:
- log_thd= general_log_thd;
- table= &general_log;
- /* clean up table before reuse/initial usage */
- bzero((char*) table, sizeof(TABLE_LIST));
- table->alias= table->table_name= (char*) "general_log";
- table->table_name_length= 11;
- break;
- case QUERY_LOG_SLOW:
- log_thd= slow_log_thd;
- table= &slow_log;
- bzero((char*) table, sizeof(TABLE_LIST));
- table->alias= table->table_name= (char*) "slow_log";
- table->table_name_length= 8;
- break;
- default:
- assert(0); // Impossible
- }
-
- /*
- This way we check that appropriate log thd was created ok during
- initialization. We cannot check "is_log_tables_initialized" var, as
- the very initialization is not finished until this function is
- completed in the very first time.
- */
- if (!log_thd)
- {
- DBUG_PRINT("error",("Cannot initialize log tables"));
- DBUG_RETURN(TRUE);
- }
-
- /*
- Set THD's thread_stack. This is needed to perform stack overrun
- check, which is done by some routines (e.g. open_table()).
- In the case we are called by thread, which already has this parameter
- set, we use this value. Otherwise we do a wild guess. This won't help
- to correctly track the stack overrun in these exceptional cases (which
- could probably happen only during startup and shutdown) but at least
- lets us to pass asserts.
- The problem stems from the fact that logger THDs are not real threads.
- */
- if (curr)
- log_thd->thread_stack= curr->thread_stack;
- else
- log_thd->thread_stack= (char*) &log_thd;
-
- log_thd->store_globals();
-
- table->lock_type= TL_WRITE_CONCURRENT_INSERT;
- table->db= log_thd->db;
- table->db_length= log_thd->db_length;
-
- lex_start(log_thd);
- log_thd->clear_error();
- if (simple_open_n_lock_tables(log_thd, table) ||
- table->table->file->extra(HA_EXTRA_MARK_AS_LOG_TABLE) ||
- table->table->file->ha_rnd_init(0))
- error= TRUE;
- else
- {
- table->table->use_all_columns();
- table->table->locked_by_logger= TRUE;
- table->table->no_replicate= TRUE;
-
- /* Honor next number columns if present */
- table->table->next_number_field= table->table->found_next_number_field;
- }
- /* restore thread settings */
- if (curr)
- curr->store_globals();
- else
- {
- my_pthread_setspecific_ptr(THR_THD, 0);
- my_pthread_setspecific_ptr(THR_MALLOC, 0);
- }
-
- /*
- After a log table was opened, we should clear privileged thread
- flag (which allows locking of a log table by a special thread, usually
- the one who closed log tables temporarily).
- */
- privileged_thread= 0;
- DBUG_RETURN(error);
-}
-
-
Log_to_csv_event_handler::Log_to_csv_event_handler()
{
- /* init artificial THD's */
- general_log_thd= new THD;
- /* logger thread always works with mysql database */
- general_log_thd->db= my_strdup("mysql", MYF(0));
- general_log_thd->db_length= 5;
- general_log.table= 0;
-
- slow_log_thd= new THD;
- /* logger thread always works with mysql database */
- slow_log_thd->db= my_strdup("mysql", MYF(0));;
- slow_log_thd->db_length= 5;
- slow_log.table= 0;
- /* no privileged thread exists at the moment */
- privileged_thread= 0;
}
Log_to_csv_event_handler::~Log_to_csv_event_handler()
{
- /* now cleanup the tables */
- if (general_log_thd)
- {
- delete general_log_thd;
- general_log_thd= NULL;
- }
-
- if (slow_log_thd)
- {
- delete slow_log_thd;
- slow_log_thd= NULL;
- }
-}
-
-
-/*
- Reopen log table of a given type
-
- SYNOPSIS
- reopen_log_table()
-
- log_table_type type of the log table to open: QUERY_LOG_GENERAL
- or QUERY_LOG_SLOW
-
- DESCRIPTION
-
- The function is a wrapper around open_log_table(). It is used during
- FLUSH LOGS and TRUNCATE of the log tables (i.e. when we need to close
- and reopen them). The difference is in the check of the
- logger.is_log_tables_initialized var, which can't be done in
- open_log_table(), as it makes no sense during startup.
-
- NOTE: this code assumes that we have logger mutex locked
-
- RETURN
- FALSE - ok
- TRUE - open_log_table() returned an error
-*/
-
-bool Log_to_csv_event_handler::reopen_log_table(uint log_table_type)
-{
- /* don't open the log table, if it wasn't enabled during startup */
- if (!logger.is_log_tables_initialized)
- return FALSE;
- return open_log_table(log_table_type);
}
void Log_to_csv_event_handler::cleanup()
{
- if (opt_log)
- close_log_table(QUERY_LOG_GENERAL, FALSE);
- if (opt_slow_log)
- close_log_table(QUERY_LOG_SLOW, FALSE);
logger.is_log_tables_initialized= FALSE;
}
@@ -436,49 +305,88 @@ void Log_to_csv_event_handler::cleanup()
*/
bool Log_to_csv_event_handler::
- log_general(time_t event_time, const char *user_host,
+ log_general(THD *thd, time_t event_time, const char *user_host,
uint user_host_len, int thread_id,
const char *command_type, uint command_type_len,
const char *sql_text, uint sql_text_len,
CHARSET_INFO *client_cs)
{
- TABLE *table= general_log.table;
+ TABLE_LIST table_list;
+ TABLE *table;
+ bool result= TRUE;
+ bool need_close= FALSE;
+ bool need_pop= FALSE;
+ bool need_rnd_end= FALSE;
uint field_index;
+ Silence_log_table_errors error_handler;
+ Open_tables_state open_tables_backup;
+ Field_timestamp *field0;
+ ulonglong save_thd_options;
+ bool save_query_start_used;
+ time_t save_start_time;
+ time_t save_time_after_lock;
+ time_t save_user_time;
+ bool save_time_zone_used;
+
+ save_thd_options= thd->options;
+ thd->options&= ~OPTION_BIN_LOG;
+
+ save_query_start_used= thd->query_start_used;
+ save_start_time= thd->start_time;
+ save_time_after_lock= thd->time_after_lock;
+ save_user_time= thd->user_time;
+ save_time_zone_used= thd->time_zone_used;
+
+ bzero(& table_list, sizeof(TABLE_LIST));
+ table_list.alias= table_list.table_name= GENERAL_LOG_NAME.str;
+ table_list.table_name_length= GENERAL_LOG_NAME.length;
+
+ table_list.lock_type= TL_WRITE_CONCURRENT_INSERT;
+
+ table_list.db= MYSQL_SCHEMA_NAME.str;
+ table_list.db_length= MYSQL_SCHEMA_NAME.length;
+
+ table= open_performance_schema_table(thd, & table_list,
+ & open_tables_backup);
+ need_close= TRUE;
+
+ if (!table ||
+ table->file->extra(HA_EXTRA_MARK_AS_LOG_TABLE) ||
+ table->file->ha_rnd_init(0))
+ goto err;
+
+ need_rnd_end= TRUE;
+
+ /* Honor next number columns if present */
+ table->next_number_field= table->found_next_number_field;
/*
"INSERT INTO general_log" can generate warning sometimes.
- Let's reset warnings from previous queries,
- otherwise warning list can grow too much,
- so thd->query gets spoiled as some point in time,
- and mysql_parse() receives a broken query.
QQ: this problem needs to be studied in more details.
- Probably it's better to suppress warnings in logging INSERTs at all.
- Comment this line and run "cast.test" to see what's happening:
+ Comment this 2 lines and run "cast.test" to see what's happening:
*/
- mysql_reset_errors(table->in_use, 1);
-
- /* below should never happen */
- if (unlikely(!logger.is_log_tables_initialized))
- return FALSE;
+ thd->push_internal_handler(& error_handler);
+ need_pop= TRUE;
/*
NOTE: we do not call restore_record() here, as all fields are
filled by the Logger (=> no need to load default ones).
*/
- /* Set current time. Required for CURRENT_TIMESTAMP to work */
- general_log_thd->start_time= event_time;
-
/*
We do not set a value for table->field[0], as it will use
default value (which is CURRENT_TIMESTAMP).
*/
/* check that all columns exist */
- if (!table->field[1] || !table->field[2] || !table->field[3] ||
- !table->field[4] || !table->field[5])
+ if (table->s->fields < 6)
goto err;
+ DBUG_ASSERT(table->field[0]->type() == MYSQL_TYPE_TIMESTAMP);
+
+ field0= (Field_timestamp*) (table->field[0]);
+ field0->set_time();
+
/* do a write */
if (table->field[1]->store(user_host, user_host_len, client_cs) ||
table->field[2]->store((longlong) thread_id, TRUE) ||
@@ -500,16 +408,39 @@ bool Log_to_csv_event_handler::
table->field[field_index]->set_default();
}
- /* log table entries are not replicated at the moment */
- tmp_disable_binlog(current_thd);
+ /* log table entries are not replicated */
+ if (table->file->ha_write_row(table->record[0]))
+ {
+ struct tm start;
+ localtime_r(&event_time, &start);
- table->file->ha_write_row(table->record[0]);
+ sql_print_error("%02d%02d%02d %2d:%02d:%02d - Failed to write to mysql.general_log",
+ start.tm_year % 100, start.tm_mon + 1,
+ start.tm_mday, start.tm_hour,
+ start.tm_min, start.tm_sec);
+ }
- reenable_binlog(current_thd);
+ result= FALSE;
- return FALSE;
err:
- return TRUE;
+ if (need_rnd_end)
+ {
+ table->file->ha_rnd_end();
+ table->file->ha_release_auto_increment();
+ }
+ if (need_pop)
+ thd->pop_internal_handler();
+ if (need_close)
+ close_performance_schema_table(thd, & open_tables_backup);
+
+ thd->options= save_thd_options;
+
+ thd->query_start_used= save_query_start_used;
+ thd->start_time= save_start_time;
+ thd->time_after_lock= save_time_after_lock;
+ thd->user_time= save_user_time;
+ thd->time_zone_used= save_time_zone_used;
+ return result;
}
@@ -548,34 +479,61 @@ bool Log_to_csv_event_handler::
longlong query_time, longlong lock_time, bool is_command,
const char *sql_text, uint sql_text_len)
{
- /* table variables */
- TABLE *table= slow_log.table;
+ TABLE_LIST table_list;
+ TABLE *table;
+ bool result= TRUE;
+ bool need_close= FALSE;
+ bool need_rnd_end= FALSE;
+ Open_tables_state open_tables_backup;
+ bool save_query_start_used;
+ time_t save_start_time;
+ time_t save_time_after_lock;
+ time_t save_user_time;
+ bool save_time_zone_used;
CHARSET_INFO *client_cs= thd->variables.character_set_client;
- DBUG_ENTER("log_slow");
+ DBUG_ENTER("Log_to_csv_event_handler::log_slow");
- /* below should never happen */
- if (unlikely(!logger.is_log_tables_initialized))
- return FALSE;
+ bzero(& table_list, sizeof(TABLE_LIST));
+ table_list.alias= table_list.table_name= SLOW_LOG_NAME.str;
+ table_list.table_name_length= SLOW_LOG_NAME.length;
+
+ table_list.lock_type= TL_WRITE_CONCURRENT_INSERT;
+
+ table_list.db= MYSQL_SCHEMA_NAME.str;
+ table_list.db_length= MYSQL_SCHEMA_NAME.length;
+
+ save_query_start_used= thd->query_start_used;
+ save_start_time= thd->start_time;
+ save_time_after_lock= thd->time_after_lock;
+ save_user_time= thd->user_time;
+ save_time_zone_used= thd->time_zone_used;
+
+ table= open_performance_schema_table(thd, & table_list,
+ & open_tables_backup);
+ need_close= TRUE;
+
+ if (!table ||
+ table->file->extra(HA_EXTRA_MARK_AS_LOG_TABLE) ||
+ table->file->ha_rnd_init(0))
+ goto err;
+
+ need_rnd_end= TRUE;
+
+ /* Honor next number columns if present */
+ table->next_number_field= table->found_next_number_field;
- /*
- Set start time for CURRENT_TIMESTAMP to the start of the query.
- This will be default value for the field[0]
- */
- slow_log_thd->start_time= query_start_arg;
restore_record(table, s->default_values); // Get empty record
+ /* check that all columns exist */
+ if (table->s->fields < 11)
+ goto err;
+
/*
We do not set a value for table->field[0], as it will use
default value.
*/
- if (!table->field[1] || !table->field[2] || !table->field[3] ||
- !table->field[4] || !table->field[5] || !table->field[6] ||
- !table->field[7] || !table->field[8] || !table->field[9] ||
- !table->field[10])
- goto err;
-
/* store the value */
if (table->field[1]->store(user_host, user_host_len, client_cs))
goto err;
@@ -612,7 +570,6 @@ bool Log_to_csv_event_handler::
table->field[4]->set_null();
table->field[5]->set_null();
}
-
/* fill database field */
if (thd->db)
{
@@ -654,17 +611,71 @@ bool Log_to_csv_event_handler::
if (table->field[10]->store(sql_text,sql_text_len, client_cs))
goto err;
- /* log table entries are not replicated at the moment */
- tmp_disable_binlog(current_thd);
+ /* log table entries are not replicated */
+ if (table->file->ha_write_row(table->record[0]))
+ {
+ struct tm start;
+ localtime_r(&current_time, &start);
- /* write the row */
- table->file->ha_write_row(table->record[0]);
+ sql_print_error("%02d%02d%02d %2d:%02d:%02d - Failed to write to mysql.slow_log",
+ start.tm_year % 100, start.tm_mon + 1,
+ start.tm_mday, start.tm_hour,
+ start.tm_min, start.tm_sec);
+ }
- reenable_binlog(current_thd);
+ result= FALSE;
- DBUG_RETURN(0);
err:
- DBUG_RETURN(1);
+ if (need_rnd_end)
+ {
+ table->file->ha_rnd_end();
+ table->file->ha_release_auto_increment();
+ }
+ if (need_close)
+ close_performance_schema_table(thd, & open_tables_backup);
+
+ thd->query_start_used= save_query_start_used;
+ thd->start_time= save_start_time;
+ thd->time_after_lock= save_time_after_lock;
+ thd->user_time= save_user_time;
+ thd->time_zone_used= save_time_zone_used;
+ DBUG_RETURN(result);
+}
+
+int Log_to_csv_event_handler::
+ activate_log(THD *thd, uint log_table_type)
+{
+ TABLE_LIST table_list;
+ TABLE *table;
+ int result;
+ Open_tables_state open_tables_backup;
+
+ DBUG_ENTER("Log_to_csv_event_handler::activate_log");
+
+ bzero(& table_list, sizeof(TABLE_LIST));
+
+ if (log_table_type == QUERY_LOG_GENERAL)
+ {
+ table_list.alias= table_list.table_name= GENERAL_LOG_NAME.str;
+ table_list.table_name_length= GENERAL_LOG_NAME.length;
+ }
+ else
+ {
+ DBUG_ASSERT(log_table_type == QUERY_LOG_SLOW);
+ table_list.alias= table_list.table_name= SLOW_LOG_NAME.str;
+ table_list.table_name_length= SLOW_LOG_NAME.length;
+ }
+
+ table_list.lock_type= TL_WRITE_CONCURRENT_INSERT;
+
+ table_list.db= MYSQL_SCHEMA_NAME.str;
+ table_list.db_length= MYSQL_SCHEMA_NAME.length;
+
+ table= open_performance_schema_table(thd, & table_list,
+ & open_tables_backup);
+ result= (table ? 0 : 1);
+ close_performance_schema_table(thd, & open_tables_backup);
+ DBUG_RETURN(result);
}
bool Log_to_csv_event_handler::
@@ -710,7 +721,7 @@ bool Log_to_file_event_handler::
*/
bool Log_to_file_event_handler::
- log_general(time_t event_time, const char *user_host,
+ log_general(THD *thd, time_t event_time, const char *user_host,
uint user_host_len, int thread_id,
const char *command_type, uint command_type_len,
const char *sql_text, uint sql_text_len,
@@ -787,7 +798,7 @@ bool LOGGER::error_log_print(enum loglevel level, const char *format,
void LOGGER::cleanup_base()
{
DBUG_ASSERT(inited == 1);
- (void) pthread_mutex_destroy(&LOCK_logger);
+ rwlock_destroy(&LOCK_logger);
if (table_log_handler)
{
table_log_handler->cleanup();
@@ -806,12 +817,6 @@ void LOGGER::cleanup_end()
}
-void LOGGER::close_log_table(uint log_table_type, bool lock_in_use)
-{
- table_log_handler->close_log_table(log_table_type, lock_in_use);
-}
-
-
/*
Perform basic log initialization: create file-based log handler and
init error log.
@@ -833,7 +838,7 @@ void LOGGER::init_base()
init_error_log(LOG_FILE);
file_log_handler->init_pthread_objects();
- (void) pthread_mutex_init(&LOCK_logger, MY_MUTEX_INIT_SLOW);
+ my_rwlock_init(&LOCK_logger, NULL);
}
@@ -848,29 +853,6 @@ void LOGGER::init_log_tables()
}
-bool LOGGER::reopen_log_table(uint log_table_type)
-{
- return table_log_handler->reopen_log_table(log_table_type);
-}
-
-bool LOGGER::reopen_log_tables()
-{
- /*
- we use | and not || here, to ensure that both reopen_log_table
- are called, even if the first one fails
- */
- if ((opt_slow_log && logger.reopen_log_table(QUERY_LOG_SLOW)) |
- (opt_log && logger.reopen_log_table(QUERY_LOG_GENERAL)))
- return TRUE;
- return FALSE;
-}
-
-
-void LOGGER::tmp_close_log_tables(THD *thd)
-{
- table_log_handler->tmp_close_log_tables(thd);
-}
-
bool LOGGER::flush_logs(THD *thd)
{
int rc= 0;
@@ -879,19 +861,11 @@ bool LOGGER::flush_logs(THD *thd)
Now we lock logger, as nobody should be able to use logging routines while
log tables are closed
*/
- logger.lock();
- if (logger.is_log_tables_initialized)
- table_log_handler->tmp_close_log_tables(thd); // the locking happens here
+ logger.lock_exclusive();
/* reopen log files */
file_log_handler->flush();
- /* reopen tables in the case they were enabled */
- if (logger.is_log_tables_initialized)
- {
- if (reopen_log_tables())
- rc= TRUE;
- }
/* end of log flush */
logger.unlock();
return rc;
@@ -939,7 +913,7 @@ bool LOGGER::slow_log_print(THD *thd, const char *query, uint query_length,
if (thd->slave_thread)
return 0;
- lock();
+ lock_shared();
if (!opt_slow_log)
{
unlock();
@@ -1011,7 +985,7 @@ bool LOGGER::general_log_print(THD *thd, enum enum_server_command command,
else
id=0; /* Log from connect handler */
- lock();
+ lock_shared();
if (!opt_log)
{
unlock();
@@ -1035,7 +1009,7 @@ bool LOGGER::general_log_print(THD *thd, enum enum_server_command command,
while (*current_handler)
error+= (*current_handler++)->
- log_general(current_time, user_host_buff,
+ log_general(thd, current_time, user_host_buff,
user_host_len, id,
command_name[(uint) command].str,
command_name[(uint) command].length,
@@ -1122,35 +1096,51 @@ void LOGGER::init_general_log(uint general_log_printer)
bool LOGGER::activate_log_handler(THD* thd, uint log_type)
{
- bool res= 0;
- lock();
+ MYSQL_QUERY_LOG *file_log;
+ bool res= FALSE;
+ lock_exclusive();
switch (log_type) {
case QUERY_LOG_SLOW:
if (!opt_slow_log)
{
- if ((res= reopen_log_table(log_type)))
- goto err;
- file_log_handler->get_mysql_slow_log()->
- open_slow_log(sys_var_slow_log_path.value);
- init_slow_log(log_output_options);
- opt_slow_log= TRUE;
+ file_log= file_log_handler->get_mysql_slow_log();
+
+ file_log->open_slow_log(sys_var_slow_log_path.value);
+ if (table_log_handler->activate_log(thd, QUERY_LOG_SLOW))
+ {
+ /* Error printed by open table in activate_log() */
+ res= TRUE;
+ file_log->close(0);
+ }
+ else
+ {
+ init_slow_log(log_output_options);
+ opt_slow_log= TRUE;
+ }
}
break;
case QUERY_LOG_GENERAL:
if (!opt_log)
{
- if ((res= reopen_log_table(log_type)))
- goto err;
- file_log_handler->get_mysql_log()->
- open_query_log(sys_var_general_log_path.value);
- init_general_log(log_output_options);
- opt_log= TRUE;
+ file_log= file_log_handler->get_mysql_log();
+
+ file_log->open_query_log(sys_var_general_log_path.value);
+ if (table_log_handler->activate_log(thd, QUERY_LOG_GENERAL))
+ {
+ /* Error printed by open table in activate_log() */
+ res= TRUE;
+ file_log->close(0);
+ }
+ else
+ {
+ init_general_log(log_output_options);
+ opt_log= TRUE;
+ }
}
break;
default:
DBUG_ASSERT(0);
}
-err:
unlock();
return res;
}
@@ -1158,23 +1148,17 @@ err:
void LOGGER::deactivate_log_handler(THD *thd, uint log_type)
{
- TABLE_LIST *table_list;
my_bool *tmp_opt= 0;
MYSQL_LOG *file_log;
- THD *log_thd;
switch (log_type) {
case QUERY_LOG_SLOW:
- table_list= &table_log_handler->slow_log;
tmp_opt= &opt_slow_log;
file_log= file_log_handler->get_mysql_slow_log();
- log_thd= table_log_handler->slow_log_thd;
break;
case QUERY_LOG_GENERAL:
- table_list= &table_log_handler->general_log;
tmp_opt= &opt_log;
file_log= file_log_handler->get_mysql_log();
- log_thd= table_log_handler->general_log_thd;
break;
default:
assert(0); // Impossible
@@ -1183,81 +1167,16 @@ void LOGGER::deactivate_log_handler(THD *thd, uint log_type)
if (!(*tmp_opt))
return;
- if (is_log_tables_initialized)
- lock_and_wait_for_table_name(log_thd, table_list);
- lock();
-
- if (is_log_tables_initialized)
- {
- VOID(pthread_mutex_lock(&LOCK_open));
- close_log_table(log_type, TRUE);
- table_list->table= 0;
- query_cache_invalidate3(log_thd, table_list, 0);
- unlock_table_name(log_thd, table_list);
- VOID(pthread_mutex_unlock(&LOCK_open));
- }
+ lock_exclusive();
file_log->close(0);
*tmp_opt= FALSE;
unlock();
}
-/*
- Close log tables temporarily. The thread which closed
- them this way can lock them in any mode it needs.
- NOTE: one should call logger.lock() before entering this
- function.
-*/
-void Log_to_csv_event_handler::tmp_close_log_tables(THD *thd)
-{
- TABLE_LIST close_slow_log, close_general_log;
-
- /* fill lists, we will need to perform operations on tables */
- bzero((char*) &close_slow_log, sizeof(TABLE_LIST));
- close_slow_log.alias= close_slow_log.table_name=(char*) "slow_log";
- close_slow_log.table_name_length= 8;
- close_slow_log.db= (char*) "mysql";
- close_slow_log.db_length= 5;
-
- bzero((char*) &close_general_log, sizeof(TABLE_LIST));
- close_general_log.alias= close_general_log.table_name=(char*) "general_log";
- close_general_log.table_name_length= 11;
- close_general_log.db= (char*) "mysql";
- close_general_log.db_length= 5;
-
- privileged_thread= thd;
-
- VOID(pthread_mutex_lock(&LOCK_open));
- /*
- NOTE: in fact, the first parameter used in query_cache_invalidate3()
- could be any non-NULL THD, as the underlying code makes certain
- assumptions about this.
- Here we use one of the logger handler THD's. Simply because it
- seems appropriate.
- */
- if (opt_log)
- {
- close_log_table(QUERY_LOG_GENERAL, TRUE);
- query_cache_invalidate3(general_log_thd, &close_general_log, 0);
- }
- if (opt_slow_log)
- {
- close_log_table(QUERY_LOG_SLOW, TRUE);
- query_cache_invalidate3(general_log_thd, &close_slow_log, 0);
- }
- VOID(pthread_mutex_unlock(&LOCK_open));
-}
-
/* the parameters are unused for the log tables */
bool Log_to_csv_event_handler::init()
{
- /*
- we use | and not || here, to ensure that both open_log_table
- are called, even if the first one fails
- */
- if ((opt_log && open_log_table(QUERY_LOG_GENERAL)) |
- (opt_slow_log && open_log_table(QUERY_LOG_SLOW)))
- return 1;
return 0;
}
@@ -1268,7 +1187,7 @@ int LOGGER::set_handlers(uint error_log_printer,
/* error log table is not supported yet */
DBUG_ASSERT(error_log_printer < LOG_TABLE);
- lock();
+ lock_exclusive();
if ((slow_log_printer & LOG_TABLE || general_log_printer & LOG_TABLE) &&
!is_log_tables_initialized)
@@ -1290,72 +1209,6 @@ int LOGGER::set_handlers(uint error_log_printer,
}
-/*
- Close log table of a given type (general or slow log)
-
- SYNOPSIS
- close_log_table()
-
- log_table_type type of the log table to close: QUERY_LOG_GENERAL
- or QUERY_LOG_SLOW
- lock_in_use Set to TRUE if the caller owns LOCK_open. FALSE otherwise.
-
- DESCRIPTION
-
- The function closes a log table. It is invoked (1) when we need to reopen
- log tables (e.g. FLUSH LOGS or TRUNCATE on the log table is being
- executed) or (2) during shutdown.
-*/
-
-void Log_to_csv_event_handler::
- close_log_table(uint log_table_type, bool lock_in_use)
-{
- THD *log_thd, *curr= current_thd;
- TABLE_LIST *table;
-
- if (!logger.is_log_table_enabled(log_table_type))
- return; /* do nothing */
-
- switch (log_table_type) {
- case QUERY_LOG_GENERAL:
- log_thd= general_log_thd;
- table= &general_log;
- break;
- case QUERY_LOG_SLOW:
- log_thd= slow_log_thd;
- table= &slow_log;
- break;
- default:
- assert(0); // Impossible
- }
-
- /*
- Set thread stack start for the logger thread. See comment in
- open_log_table() for details.
- */
- if (curr)
- log_thd->thread_stack= curr->thread_stack;
- else
- log_thd->thread_stack= (char*) &log_thd;
-
- /* close the table */
- log_thd->store_globals();
- table->table->file->ha_rnd_end();
- table->table->file->ha_release_auto_increment();
- /* discard logger mark before unlock*/
- table->table->locked_by_logger= FALSE;
- close_thread_tables(log_thd, lock_in_use);
-
- if (curr)
- curr->store_globals();
- else
- {
- my_pthread_setspecific_ptr(THR_THD, 0);
- my_pthread_setspecific_ptr(THR_MALLOC, 0);
- }
-}
-
-
/*
Save position of binary log transaction cache.
@@ -2099,6 +1952,8 @@ bool MYSQL_QUERY_LOG::write(time_t event_time, const char *user_host,
struct tm start;
uint time_buff_len= 0;
+ (void) pthread_mutex_lock(&LOCK_log);
+
/* Test if someone closed between the is_open test and lock */
if (is_open())
{
@@ -2143,6 +1998,7 @@ bool MYSQL_QUERY_LOG::write(time_t event_time, const char *user_host,
goto err;
}
+ (void) pthread_mutex_unlock(&LOCK_log);
return FALSE;
err:
@@ -2151,6 +2007,7 @@ err:
write_error= 1;
sql_print_error(ER(ER_ERROR_ON_WRITE), name, errno);
}
+ (void) pthread_mutex_unlock(&LOCK_log);
return TRUE;
}
@@ -2193,8 +2050,13 @@ bool MYSQL_QUERY_LOG::write(THD *thd, time_t current_time,
bool error= 0;
DBUG_ENTER("MYSQL_QUERY_LOG::write");
+ (void) pthread_mutex_lock(&LOCK_log);
+
if (!is_open())
+ {
+ (void) pthread_mutex_unlock(&LOCK_log);
DBUG_RETURN(0);
+ }
if (is_open())
{ // Safety agains reopen
@@ -2298,6 +2160,7 @@ bool MYSQL_QUERY_LOG::write(THD *thd, time_t current_time,
}
}
}
+ (void) pthread_mutex_unlock(&LOCK_log);
DBUG_RETURN(error);
}
diff --git a/sql/log.h b/sql/log.h
index d92e0117bcc..3b1a0950daa 100644
--- a/sql/log.h
+++ b/sql/log.h
@@ -212,6 +212,7 @@ public:
return open(generate_name(log_name, ".log", 0, buf), LOG_NORMAL, 0,
WRITE_CACHE);
}
+
private:
time_t last_time;
};
@@ -398,7 +399,7 @@ public:
const char *sql_text, uint sql_text_len)= 0;
virtual bool log_error(enum loglevel level, const char *format,
va_list args)= 0;
- virtual bool log_general(time_t event_time, const char *user_host,
+ virtual bool log_general(THD *thd, time_t event_time, const char *user_host,
uint user_host_len, int thread_id,
const char *command_type, uint command_type_len,
const char *sql_text, uint sql_text_len,
@@ -412,27 +413,7 @@ int check_if_log_table(uint db_len, const char *db, uint table_name_len,
class Log_to_csv_event_handler: public Log_event_handler
{
- /*
- We create artificial THD for each of the logs. This is to avoid
- locking issues: we don't want locks on the log tables reside in the
- THD's of the query. The reason is the locking order and duration.
- */
- THD *general_log_thd, *slow_log_thd;
- /*
- This is for the thread, which called tmp_close_log_tables. The thread
- will be allowed to write-lock the log tables (as it explicitly disabled
- logging). This is used for such operations as REPAIR, which require
- exclusive lock on the log tables.
- NOTE: there can be only one priviliged thread, as one should
- lock logger with logger.lock() before calling tmp_close_log_tables().
- So no other thread could get privileged status at the same time.
- */
- THD *privileged_thread;
friend class LOGGER;
- TABLE_LIST general_log, slow_log;
-
-private:
- bool open_log_table(uint log_type);
public:
Log_to_csv_event_handler();
@@ -447,18 +428,13 @@ public:
const char *sql_text, uint sql_text_len);
virtual bool log_error(enum loglevel level, const char *format,
va_list args);
- virtual bool log_general(time_t event_time, const char *user_host,
+ virtual bool log_general(THD *thd, time_t event_time, const char *user_host,
uint user_host_len, int thread_id,
const char *command_type, uint command_type_len,
const char *sql_text, uint sql_text_len,
- CHARSET_INFO *client_cs);
- void tmp_close_log_tables(THD *thd);
- void close_log_table(uint log_type, bool lock_in_use);
- bool reopen_log_table(uint log_type);
- THD* get_privileged_thread()
- {
- return privileged_thread;
- }
+ CHARSET_INFO *client_cs);
+
+ int activate_log(THD *thd, uint log_type);
};
@@ -484,7 +460,7 @@ public:
const char *sql_text, uint sql_text_len);
virtual bool log_error(enum loglevel level, const char *format,
va_list args);
- virtual bool log_general(time_t event_time, const char *user_host,
+ virtual bool log_general(THD *thd, time_t event_time, const char *user_host,
uint user_host_len, int thread_id,
const char *command_type, uint command_type_len,
const char *sql_text, uint sql_text_len,
@@ -499,7 +475,7 @@ public:
/* Class which manages slow, general and error log event handlers */
class LOGGER
{
- pthread_mutex_t LOCK_logger;
+ rw_lock_t LOCK_logger;
/* flag to check whether logger mutex is initialized */
uint inited;
@@ -519,21 +495,10 @@ public:
LOGGER() : inited(0), table_log_handler(NULL),
file_log_handler(NULL), is_log_tables_initialized(FALSE)
{}
- void lock() { (void) pthread_mutex_lock(&LOCK_logger); }
- void unlock() { (void) pthread_mutex_unlock(&LOCK_logger); }
- void tmp_close_log_tables(THD *thd);
- bool is_log_table_enabled(uint log_table_type)
- {
- switch (log_table_type) {
- case QUERY_LOG_SLOW:
- return table_log_handler && table_log_handler->slow_log.table != 0;
- case QUERY_LOG_GENERAL:
- return table_log_handler && table_log_handler->general_log.table != 0;
- default:
- DBUG_ASSERT(0);
- return FALSE; /* make compiler happy */
- }
- }
+ void lock_shared() { rw_rdlock(&LOCK_logger); }
+ void lock_exclusive() { rw_wrlock(&LOCK_logger); }
+ void unlock() { rw_unlock(&LOCK_logger); }
+ bool is_log_table_enabled(uint log_table_type);
/*
We want to initialize all log mutexes as soon as possible,
but we cannot do it in constructor, as safe_mutex relies on
@@ -543,20 +508,6 @@ public:
void init_base();
void init_log_tables();
bool flush_logs(THD *thd);
- THD *get_general_log_thd()
- {
- if (table_log_handler)
- return (THD *) table_log_handler->general_log_thd;
- else
- return NULL;
- }
- THD *get_slow_log_thd()
- {
- if (table_log_handler)
- return (THD *) table_log_handler->slow_log_thd;
- else
- return NULL;
- }
/* Perform basic logger cleanup. this will leave e.g. error log open. */
void cleanup_base();
/* Free memory. Nothing could be logged after this function is called */
@@ -568,10 +519,6 @@ public:
bool general_log_print(THD *thd,enum enum_server_command command,
const char *format, va_list args);
- void close_log_table(uint log_type, bool lock_in_use);
- bool reopen_log_table(uint log_type);
- bool reopen_log_tables();
-
/* we use this function to setup all enabled log event handlers */
int set_handlers(uint error_log_printer,
uint slow_log_printer,
@@ -593,19 +540,6 @@ public:
return file_log_handler->get_mysql_log();
return NULL;
}
- THD* get_privileged_thread()
- {
- if (table_log_handler)
- return table_log_handler->get_privileged_thread();
- else
- return NULL;
- }
- bool is_privileged_thread(THD *thd)
- {
- return thd == get_general_log_thd() ||
- thd == get_slow_log_thd() ||
- thd == get_privileged_thread();
- }
};
enum enum_binlog_format {
diff --git a/sql/log_event.cc b/sql/log_event.cc
index c062aa99b4e..62b90986cfd 100644
--- a/sql/log_event.cc
+++ b/sql/log_event.cc
@@ -1479,8 +1479,8 @@ Query_log_event::Query_log_event(THD* thd_arg, const char* query_arg,
ulong query_length, bool using_trans,
bool suppress_use, THD::killed_state killed_status_arg)
:Log_event(thd_arg,
- ((thd_arg->tmp_table_used ? LOG_EVENT_THREAD_SPECIFIC_F : 0)
- | (suppress_use ? LOG_EVENT_SUPPRESS_USE_F : 0)),
+ (thd_arg->thread_specific_used ? LOG_EVENT_THREAD_SPECIFIC_F : 0) |
+ (suppress_use ? LOG_EVENT_SUPPRESS_USE_F : 0),
using_trans),
data_buf(0), query(query_arg), catalog(thd_arg->catalog),
db(thd_arg->db), q_len((uint32) query_length),
@@ -2912,8 +2912,9 @@ Load_log_event::Load_log_event(THD *thd_arg, sql_exchange *ex,
List<Item> &fields_arg,
enum enum_duplicates handle_dup,
bool ignore, bool using_trans)
- :Log_event(thd_arg, !thd_arg->tmp_table_used ?
- 0 : LOG_EVENT_THREAD_SPECIFIC_F, using_trans),
+ :Log_event(thd_arg,
+ thd_arg->thread_specific_used ? LOG_EVENT_THREAD_SPECIFIC_F : 0,
+ using_trans),
thread_id(thd_arg->thread_id),
slave_proxy_id(thd_arg->variables.pseudo_thread_id),
num_fields(0),fields(0),
diff --git a/sql/mysql_priv.h b/sql/mysql_priv.h
index 7b7bc81957e..2fe70980ea8 100644
--- a/sql/mysql_priv.h
+++ b/sql/mysql_priv.h
@@ -944,6 +944,7 @@ void mysql_parse(THD *thd, const char *inBuf, uint length,
bool mysql_test_parse_for_slave(THD *thd,char *inBuf,uint length);
bool is_update_query(enum enum_sql_command command);
+bool is_log_table_write_query(enum enum_sql_command command);
bool alloc_query(THD *thd, const char *packet, uint packet_length);
void mysql_init_select(LEX *lex);
void mysql_reset_thd_for_next_command(THD *thd);
@@ -1123,7 +1124,8 @@ TABLE_SHARE *get_table_share(THD *thd, TABLE_LIST *table_list, char *key,
uint key_length, uint db_flags, int *error);
void release_table_share(TABLE_SHARE *share, enum release_type type);
TABLE_SHARE *get_cached_table_share(const char *db, const char *table_name);
-TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type update);
+TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type update,
+ uint lock_flags);
TABLE *open_table(THD *thd, TABLE_LIST *table_list, MEM_ROOT* mem,
bool *refresh, uint flags);
bool reopen_name_locked_table(THD* thd, TABLE_LIST* table_list, bool link_in);
@@ -1231,6 +1233,11 @@ void reset_status_vars();
/* information schema */
extern LEX_STRING INFORMATION_SCHEMA_NAME;
+/* log tables */
+extern LEX_STRING MYSQL_SCHEMA_NAME;
+extern LEX_STRING GENERAL_LOG_NAME;
+extern LEX_STRING SLOW_LOG_NAME;
+
extern const LEX_STRING partition_keywords[];
ST_SCHEMA_TABLE *find_schema_table(THD *thd, const char* table_name);
ST_SCHEMA_TABLE *get_schema_table(enum enum_schema_tables schema_table_idx);
@@ -1557,6 +1564,10 @@ bool open_system_tables_for_read(THD *thd, TABLE_LIST *table_list,
void close_system_tables(THD *thd, Open_tables_state *backup);
TABLE *open_system_table_for_update(THD *thd, TABLE_LIST *one_table);
+TABLE *open_performance_schema_table(THD *thd, TABLE_LIST *one_table,
+ Open_tables_state *backup);
+void close_performance_schema_table(THD *thd, Open_tables_state *backup);
+
bool close_cached_tables(THD *thd, bool wait_for_refresh, TABLE_LIST *tables, bool have_lock = FALSE);
bool close_cached_connection_tables(THD *thd, bool wait_for_refresh,
LEX_STRING *connect_string,
@@ -1891,11 +1902,13 @@ MYSQL_LOCK *mysql_lock_tables(THD *thd, TABLE **table, uint count,
#define MYSQL_LOCK_NOTIFY_IF_NEED_REOPEN 0x0004
#define MYSQL_OPEN_TEMPORARY_ONLY 0x0008
#define MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY 0x0010
+#define MYSQL_LOCK_PERF_SCHEMA 0x0020
void mysql_unlock_tables(THD *thd, MYSQL_LOCK *sql_lock);
void mysql_unlock_read_tables(THD *thd, MYSQL_LOCK *sql_lock);
void mysql_unlock_some_tables(THD *thd, TABLE **table,uint count);
-void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table);
+void mysql_lock_remove(THD *thd, MYSQL_LOCK *locked,TABLE *table,
+ bool always_unlock);
void mysql_lock_abort(THD *thd, TABLE *table, bool upgrade_lock);
void mysql_lock_downgrade_write(THD *thd, TABLE *table,
thr_lock_type new_lock_type);
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 6d22047b9db..5e2139acd91 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -6320,7 +6320,8 @@ The minimum value for this variable is 4096.",
(uchar**) &opt_date_time_formats[MYSQL_TIMESTAMP_TIME],
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{"tmp_table_size", OPT_TMP_TABLE_SIZE,
- "If an in-memory temporary table exceeds this size, MySQL will automatically convert it to an on-disk MyISAM table.",
+ "If an internal in-memory temporary table exceeds this size, MySQL will"
+ " automatically convert it to an on-disk MyISAM table.",
(uchar**) &global_system_variables.tmp_table_size,
(uchar**) &max_system_variables.tmp_table_size, 0, GET_ULL,
REQUIRED_ARG, 16*1024*1024L, 1024, MAX_MEM_TABLE_SIZE, 0, 1, 0},
diff --git a/sql/set_var.cc b/sql/set_var.cc
index aee3b33cc24..a18d45627dc 100644
--- a/sql/set_var.cc
+++ b/sql/set_var.cc
@@ -2053,21 +2053,15 @@ end:
bool sys_var_log_state::update(THD *thd, set_var *var)
{
- bool res= 0;
+ bool res;
pthread_mutex_lock(&LOCK_global_system_variables);
if (!var->save_result.ulong_value)
- logger.deactivate_log_handler(thd, log_type);
- else
{
- if ((res= logger.activate_log_handler(thd, log_type)))
- {
- my_error(ER_CANT_ACTIVATE_LOG, MYF(0),
- log_type == QUERY_LOG_GENERAL ? "general" :
- "slow query");
- goto err;
- }
+ logger.deactivate_log_handler(thd, log_type);
+ res= false;
}
-err:
+ else
+ res= logger.activate_log_handler(thd, log_type);
pthread_mutex_unlock(&LOCK_global_system_variables);
return res;
}
@@ -2143,7 +2137,7 @@ bool update_sys_var_str_path(THD *thd, sys_var_str *var_str,
}
pthread_mutex_lock(&LOCK_global_system_variables);
- logger.lock();
+ logger.lock_exclusive();
if (file_log && log_state)
file_log->close(0);
@@ -2206,7 +2200,7 @@ static void sys_default_slow_log_path(THD *thd, enum_var_type type)
bool sys_var_log_output::update(THD *thd, set_var *var)
{
pthread_mutex_lock(&LOCK_global_system_variables);
- logger.lock();
+ logger.lock_exclusive();
logger.init_slow_log(var->save_result.ulong_value);
logger.init_general_log(var->save_result.ulong_value);
*value= var->save_result.ulong_value;
@@ -2219,7 +2213,7 @@ bool sys_var_log_output::update(THD *thd, set_var *var)
void sys_var_log_output::set_default(THD *thd, enum_var_type type)
{
pthread_mutex_lock(&LOCK_global_system_variables);
- logger.lock();
+ logger.lock_exclusive();
logger.init_slow_log(LOG_FILE);
logger.init_general_log(LOG_FILE);
*value= LOG_FILE;
diff --git a/sql/share/errmsg.txt b/sql/share/errmsg.txt
index 682eee06e02..966e841ccbf 100644
--- a/sql/share/errmsg.txt
+++ b/sql/share/errmsg.txt
@@ -5936,8 +5936,8 @@ ER_WARN_DEPRECATED_SYNTAX_WITH_VER
ER_CANT_WRITE_LOCK_LOG_TABLE
eng "You can't write-lock a log table. Only read access is possible"
ger "Eine Log-Tabelle kann nicht schreibgesperrt werden. Es ist ohnehin nur Lesezugriff möglich"
-ER_CANT_READ_LOCK_LOG_TABLE
- eng "You can't use usual read lock with log tables. Try READ LOCAL instead"
+ER_CANT_LOCK_LOG_TABLE
+ eng "You can't use locks with log tables."
ger "Log-Tabellen können nicht mit normalen Lesesperren gesperrt werden. Verwenden Sie statt dessen READ LOCAL"
ER_FOREIGN_DUPLICATE_KEY 23000 S1009
eng "Upholding foreign key constraints for table '%.192s', entry '%-.192s', key %d would lead to a duplicate entry"
diff --git a/sql/slave.cc b/sql/slave.cc
index 2e8e3f582de..96a105b06e4 100644
--- a/sql/slave.cc
+++ b/sql/slave.cc
@@ -977,7 +977,7 @@ static int create_table_from_dump(THD* thd, MYSQL *mysql, const char* db,
thd->proc_info = "Opening master dump table";
tables.lock_type = TL_WRITE;
- if (!open_ltable(thd, &tables, TL_WRITE))
+ if (!open_ltable(thd, &tables, TL_WRITE, 0))
{
sql_print_error("create_table_from_dump: could not open created table");
goto err;
diff --git a/sql/sp.cc b/sql/sp.cc
index aed4976f839..372aa9c6780 100644
--- a/sql/sp.cc
+++ b/sql/sp.cc
@@ -406,7 +406,7 @@ db_find_routine(THD *thd, int type, sp_name *name, sp_head **sphp)
if ((ret= db_find_routine_aux(thd, type, name, table)) != SP_OK)
goto done;
- if (table->s->fields != MYSQL_PROC_FIELD_COUNT)
+ if (table->s->fields < MYSQL_PROC_FIELD_COUNT)
{
ret= SP_GET_FIELD_FAILED;
goto done;
@@ -695,7 +695,7 @@ sp_create_routine(THD *thd, int type, sp_head *sp)
strxnmov(definer, sizeof(definer)-1, thd->lex->definer->user.str, "@",
thd->lex->definer->host.str, NullS);
- if (table->s->fields != MYSQL_PROC_FIELD_COUNT)
+ if (table->s->fields < MYSQL_PROC_FIELD_COUNT)
{
ret= SP_GET_FIELD_FAILED;
goto done;
@@ -1067,7 +1067,7 @@ sp_show_status_routine(THD *thd, int type, const char *name_pattern)
tables.db= (char*)"mysql";
tables.table_name= tables.alias= (char*)"proc";
- if (! (table= open_ltable(thd, &tables, TL_READ)))
+ if (! (table= open_ltable(thd, &tables, TL_READ, 0)))
{
res= SP_OPEN_TABLE_FAILED;
goto done;
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index 67fa380d313..91f1570f653 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -1602,7 +1602,7 @@ bool change_password(THD *thd, const char *host, const char *user,
}
#endif
- if (!(table= open_ltable(thd, &tables, TL_WRITE)))
+ if (!(table= open_ltable(thd, &tables, TL_WRITE, 0)))
DBUG_RETURN(1);
VOID(pthread_mutex_lock(&acl_cache->lock));
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index 965106b804f..3e594d4da4b 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -902,8 +902,7 @@ bool close_cached_tables(THD *thd, bool if_wait_for_refresh,
bool found=0;
for (TABLE_LIST *table= tables; table; table= table->next_local)
{
- if ((!table->table || !table->table->s->log_table) &&
- remove_table_from_cache(thd, table->db, table->table_name,
+ if (remove_table_from_cache(thd, table->db, table->table_name,
RTFC_OWNED_BY_THD_FLAG))
found=1;
}
@@ -951,8 +950,7 @@ bool close_cached_tables(THD *thd, bool if_wait_for_refresh,
are employed by CREATE TABLE as in this case table simply does not
exist yet.
*/
- if (!table->s->log_table &&
- (table->needs_reopen_or_name_lock() && table->db_stat))
+ if (table->needs_reopen_or_name_lock() && table->db_stat)
{
found=1;
DBUG_PRINT("signal", ("Waiting for COND_refresh"));
@@ -1679,8 +1677,28 @@ TABLE *find_temporary_table(THD *thd, TABLE_LIST *table_list)
}
-/*
- Close temporary table and unlink from thd->temporary tables
+/**
+ Drop a temporary table.
+
+ Try to locate the table in the list of thd->temporary_tables.
+ If the table is found:
+ - if the table is in thd->locked_tables, unlock it and
+ remove it from the list of locked tables. Currently only transactional
+ temporary tables are present in the locked_tables list.
+ - Close the temporary table, remove its .FRM
+ - remove the table from the list of temporary tables
+
+ This function is used to drop user temporary tables, as well as
+ internal tables created in CREATE TEMPORARY TABLE ... SELECT
+ or ALTER TABLE. Even though part of the work done by this function
+ is redundant when the table is internal, as long as we
+ link both internal and user temporary tables into the same
+ thd->temporary_tables list, it's impossible to tell here whether
+ we're dealing with an internal or a user temporary table.
+
+ @retval TRUE the table was not found in the list of temporary tables
+ of this thread
+ @retval FALSE the table was found and dropped successfully.
*/
bool close_temporary_table(THD *thd, TABLE_LIST *table_list)
@@ -1689,6 +1707,11 @@ bool close_temporary_table(THD *thd, TABLE_LIST *table_list)
if (!(table= find_temporary_table(thd, table_list)))
return 1;
+ /*
+ If LOCK TABLES list is not empty and contains this table,
+ unlock the table and remove the table from this list.
+ */
+ mysql_lock_remove(thd, thd->locked_tables, table, FALSE);
close_temporary_table(thd, table, 1, 1);
return 0;
}
@@ -1835,7 +1858,7 @@ void unlink_open_table(THD *thd, TABLE *find, bool unlock)
!memcmp(list->s->table_cache_key.str, key, key_length))
{
if (unlock && thd->locked_tables)
- mysql_lock_remove(thd, thd->locked_tables,list);
+ mysql_lock_remove(thd, thd->locked_tables, list, TRUE);
VOID(hash_delete(&open_cache,(uchar*) list)); // Close table
}
else
@@ -1861,8 +1884,13 @@ void unlink_open_table(THD *thd, TABLE *find, bool unlock)
@note This routine assumes that table to be closed is open only
by calling thread so we needn't wait until other threads
- will close the table. It also assumes that table to be
- dropped is already unlocked.
+ will close the table. Also unless called under implicit or
+ explicit LOCK TABLES mode it assumes that table to be
+ dropped is already unlocked. In the former case it will
+ also remove lock on the table. But one should not rely on
+ this behaviour as it may change in future.
+ Currently, however, this function is never called for a
+ table that was locked with LOCK TABLES.
*/
void drop_open_table(THD *thd, TABLE *table, const char *db_name,
@@ -2277,7 +2305,7 @@ TABLE *open_table(THD *thd, TABLE_LIST *table_list, MEM_ROOT *mem_root,
}
table->query_id= thd->query_id;
table->clear_query_id= 1;
- thd->tmp_table_used= 1;
+ thd->thread_specific_used= TRUE;
DBUG_PRINT("info",("Using temporary table"));
goto reset;
}
@@ -2468,8 +2496,7 @@ TABLE *open_table(THD *thd, TABLE_LIST *table_list, MEM_ROOT *mem_root,
&state))
{
/*
- Here we flush tables marked for flush. However we never flush log
- tables here. They are flushed only on FLUSH LOGS.
+ Here we flush tables marked for flush.
Normally, table->s->version contains the value of
refresh_version from the moment when this table was
(re-)opened and added to the cache.
@@ -2486,7 +2513,7 @@ TABLE *open_table(THD *thd, TABLE_LIST *table_list, MEM_ROOT *mem_root,
c1: name lock t2; -- blocks
c2: open t1; -- blocks
*/
- if (table->needs_reopen_or_name_lock() && !table->s->log_table)
+ if (table->needs_reopen_or_name_lock())
{
DBUG_PRINT("note",
("Found table '%s.%s' with different refresh version",
@@ -2840,7 +2867,7 @@ void close_data_files_and_morph_locks(THD *thd, const char *db,
!strcmp(table->s->db.str, db))
{
if (thd->locked_tables)
- mysql_lock_remove(thd, thd->locked_tables, table);
+ mysql_lock_remove(thd, thd->locked_tables, table, TRUE);
table->open_placeholder= 1;
close_handle_and_leave_table_as_lock(table);
}
@@ -2962,10 +2989,9 @@ void close_old_data_files(THD *thd, TABLE *table, bool morph_locks,
for (; table ; table=table->next)
{
/*
- Reopen marked for flush. But close log tables. They are flushed only
- explicitly on FLUSH LOGS
+ Reopen marked for flush.
*/
- if (table->needs_reopen_or_name_lock() && !table->s->log_table)
+ if (table->needs_reopen_or_name_lock())
{
found=1;
if (table->db_stat)
@@ -2979,7 +3005,7 @@ void close_old_data_files(THD *thd, TABLE *table, bool morph_locks,
instances of this table.
*/
mysql_lock_abort(thd, table, TRUE);
- mysql_lock_remove(thd, thd->locked_tables, table);
+ mysql_lock_remove(thd, thd->locked_tables, table, TRUE);
/*
We want to protect the table from concurrent DDL operations
(like RENAME TABLE) until we will re-open and re-lock it.
@@ -3012,10 +3038,6 @@ void close_old_data_files(THD *thd, TABLE *table, bool morph_locks,
Wait until all threads has closed the tables in the list
We have also to wait if there is thread that has a lock on this table even
if the table is closed
- NOTE: log tables are handled differently by the logging routines.
- E.g. general_log is always opened and locked by the logger
- and the table handler used by the logger, will be skipped by
- this check.
*/
bool table_is_used(TABLE *table, bool wait_for_name_lock)
@@ -3034,10 +3056,10 @@ bool table_is_used(TABLE *table, bool wait_for_name_lock)
search= (TABLE*) hash_next(&open_cache, (uchar*) key,
key_length, &state))
{
- DBUG_PRINT("info", ("share: 0x%lx locked_by_logger: %d "
+ DBUG_PRINT("info", ("share: 0x%lx "
"open_placeholder: %d locked_by_name: %d "
"db_stat: %u version: %lu",
- (ulong) search->s, search->locked_by_logger,
+ (ulong) search->s,
search->open_placeholder, search->locked_by_name,
search->db_stat,
search->s->version));
@@ -3049,12 +3071,9 @@ bool table_is_used(TABLE *table, bool wait_for_name_lock)
- If we are in flush table and we didn't execute the flush
- If the table engine is open and it's an old version
(We must wait until all engines are shut down to use the table)
- However we fo not wait if we encountered a table, locked by the logger.
- Log tables are managed separately by logging routines.
*/
- if (!search->locked_by_logger &&
- (search->locked_by_name && wait_for_name_lock ||
- (search->is_name_opened() && search->needs_reopen_or_name_lock())))
+ if ( (search->locked_by_name && wait_for_name_lock) ||
+ (search->is_name_opened() && search->needs_reopen_or_name_lock()))
DBUG_RETURN(1);
}
} while ((table=table->next));
@@ -3131,7 +3150,7 @@ TABLE *drop_locked_tables(THD *thd,const char *db, const char *table_name)
if (!strcmp(table->s->table_name.str, table_name) &&
!strcmp(table->s->db.str, db))
{
- mysql_lock_remove(thd, thd->locked_tables,table);
+ mysql_lock_remove(thd, thd->locked_tables, table, TRUE);
if (!found)
{
found= table;
@@ -3766,6 +3785,7 @@ static bool check_lock_and_start_stmt(THD *thd, TABLE *table,
thd Thread handler
table_list Table to open is first table in this list
lock_type Lock to use for open
+ lock_flags Flags passed to mysql_lock_table
NOTE
This function don't do anything like SP/SF/views/triggers analysis done
@@ -3781,7 +3801,8 @@ static bool check_lock_and_start_stmt(THD *thd, TABLE *table,
table_list->table table
*/
-TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type lock_type)
+TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type lock_type,
+ uint lock_flags)
{
TABLE *table;
bool refresh;
@@ -3809,8 +3830,8 @@ TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type lock_type)
{
DBUG_ASSERT(thd->lock == 0); // You must lock everything at once
if ((table->reginfo.lock_type= lock_type) != TL_UNLOCK)
- if (! (thd->lock= mysql_lock_tables(thd, &table_list->table, 1, 0,
- &refresh)))
+ if (! (thd->lock= mysql_lock_tables(thd, &table_list->table, 1,
+ lock_flags, &refresh)))
table= 0;
}
}
@@ -4149,11 +4170,6 @@ int lock_tables(THD *thd, TABLE_LIST *tables, uint count, bool *need_reopen)
DBUG_ASSERT(thd->lock == 0); // You must lock everything at once
TABLE **start,**ptr;
uint lock_flag= MYSQL_LOCK_NOTIFY_IF_NEED_REOPEN;
-
- /* Ignore GLOBAL READ LOCK and GLOBAL READ_ONLY if called from a logger */
- if (logger.is_privileged_thread(thd))
- lock_flag|= (MYSQL_LOCK_IGNORE_GLOBAL_READ_LOCK |
- MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY);
if (!(ptr=start=(TABLE**) thd->alloc(sizeof(TABLE*)*count)))
DBUG_RETURN(-1);
@@ -7181,7 +7197,6 @@ bool remove_table_from_cache(THD *thd, const char *db, const char *table_name,
else if (in_use != thd)
{
DBUG_PRINT("info", ("Table was in use by other thread"));
- in_use->some_tables_deleted=1;
if (table->is_name_opened())
{
DBUG_PRINT("info", ("Found another active instance of the table"));
@@ -7617,7 +7632,7 @@ open_system_tables_for_read(THD *thd, TABLE_LIST *table_list,
if (!table)
goto error;
- DBUG_ASSERT(table->s->system_table);
+ DBUG_ASSERT(table->s->table_category == TABLE_CATEGORY_SYSTEM);
table->use_all_columns();
table->reginfo.lock_type= tables->lock_type;
@@ -7684,12 +7699,92 @@ open_system_table_for_update(THD *thd, TABLE_LIST *one_table)
{
DBUG_ENTER("open_system_table_for_update");
- TABLE *table= open_ltable(thd, one_table, one_table->lock_type);
+ TABLE *table= open_ltable(thd, one_table, one_table->lock_type, 0);
if (table)
{
- DBUG_ASSERT(table->s->system_table);
+ DBUG_ASSERT(table->s->table_category == TABLE_CATEGORY_SYSTEM);
table->use_all_columns();
}
DBUG_RETURN(table);
}
+
+/**
+ Open a performance schema table.
+ Opening such tables is performed internally in the server
+ implementation, and is a 'nested' open, since some tables
+ might be already opened by the current thread.
+ The thread context before this call is saved, and is restored
+ when calling close_performance_schema_table().
+ @param thd The current thread
+ @param one_table Performance schema table to open
+ @param backup [out] Temporary storage used to save the thread context
+*/
+TABLE *
+open_performance_schema_table(THD *thd, TABLE_LIST *one_table,
+ Open_tables_state *backup)
+{
+ uint flags= ( MYSQL_LOCK_IGNORE_GLOBAL_READ_LOCK
+ | MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY
+ | MYSQL_LOCK_PERF_SCHEMA );
+
+ DBUG_ENTER("open_performance_schema_table");
+
+ thd->reset_n_backup_open_tables_state(backup);
+
+ TABLE *table= open_ltable(thd, one_table, one_table->lock_type, flags);
+ if (table)
+ {
+ DBUG_ASSERT(table->s->table_category == TABLE_CATEGORY_PERFORMANCE);
+ /* Make sure all columns get assigned to a default value */
+ table->use_all_columns();
+ table->no_replicate= 1;
+ }
+
+ DBUG_RETURN(table);
+}
+
+/**
+ Close a performance schema table.
+ The last table opened by open_performance_schema_table()
+ is closed, then the thread context is restored.
+ @param thd The current thread
+ @param backup [in] the context to restore.
+*/
+void close_performance_schema_table(THD *thd, Open_tables_state *backup)
+{
+ bool found_old_table;
+
+ if (thd->lock)
+ {
+ /*
+ Note:
+ We do not create explicitly a separate transaction for the
+ performance table I/O, but borrow the current transaction.
+ lock + unlock will autocommit the change done in the
+ performance schema table: this is the expected result.
+ The current transaction should not be affected by this code.
+ TODO: Note that if a transactional engine is used for log tables,
+ this code will need to be revised, as a separate transaction
+ might be needed.
+ */
+ mysql_unlock_tables(thd, thd->lock);
+ thd->lock= 0;
+ }
+
+ safe_mutex_assert_not_owner(&LOCK_open);
+
+ pthread_mutex_lock(&LOCK_open);
+
+ found_old_table= false;
+ while (thd->open_tables)
+ found_old_table|= close_thread_table(thd, &thd->open_tables);
+
+ if (found_old_table)
+ broadcast_refresh();
+
+ pthread_mutex_unlock(&LOCK_open);
+
+ thd->restore_backup_open_tables_state(backup);
+}
+
diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index b884b21b47c..ba9d832dfa9 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -394,12 +394,13 @@ THD::THD()
count_cuted_fields= CHECK_FIELD_IGNORE;
killed= NOT_KILLED;
db_length= col_access=0;
- query_error= tmp_table_used= 0;
+ query_error= thread_specific_used= FALSE;
hash_clear(&handler_tables_hash);
tmp_table=0;
used_tables=0;
cuted_fields= sent_row_count= row_count= 0L;
limit_found_rows= 0;
+ row_count_func= -1;
statement_id_counter= 0UL;
#ifdef ERROR_INJECT_SUPPORT
error_inject_value= 0UL;
diff --git a/sql/sql_class.h b/sql/sql_class.h
index 2f01d04358b..00b68420f56 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -765,13 +765,25 @@ enum prelocked_mode_type {NON_PRELOCKED= 0, PRELOCKED= 1,
class Open_tables_state
{
public:
- /*
- open_tables - list of regular tables in use by this thread
- temporary_tables - list of temp tables in use by this thread
- handler_tables - list of tables that were opened with HANDLER OPEN
- and are still in use by this thread
+ /**
+ List of regular tables in use by this thread. Contains temporary and
+ base tables that were opened with @see open_tables().
+ */
+ TABLE *open_tables;
+ /**
+ List of temporary tables used by this thread. Contains user-level
+ temporary tables, created with CREATE TEMPORARY TABLE, and
+ internal temporary tables, created, e.g., to resolve a SELECT,
+ or for an intermediate table used in ALTER.
+ XXX Why are internal temporary tables added to this list?
*/
- TABLE *open_tables, *temporary_tables, *handler_tables, *derived_tables;
+ TABLE *temporary_tables;
+ /**
+ List of tables that were opened with HANDLER OPEN and are
+ still in use by this thread.
+ */
+ TABLE *handler_tables;
+ TABLE *derived_tables;
/*
During a MySQL session, one can lock tables in two modes: automatic
or manual. In automatic mode all necessary tables are locked just before
@@ -1405,7 +1417,9 @@ public:
bool substitute_null_with_insert_id;
bool in_lock_tables;
bool query_error, bootstrap, cleanup_done;
- bool tmp_table_used;
+
+ /** is set if some thread specific value(s) used in a statement. */
+ bool thread_specific_used;
bool charset_is_system_charset, charset_is_collation_connection;
bool charset_is_character_set_filesystem;
bool enable_slow_log; /* enable slow log for current statement */
@@ -2434,6 +2448,7 @@ public:
#define CF_HAS_ROW_COUNT 2
#define CF_STATUS_COMMAND 4
#define CF_SHOW_TABLE_COMMAND 8
+#define CF_WRITE_LOGS_COMMAND 16
/* Functions in sql_class.cc */
diff --git a/sql/sql_delete.cc b/sql/sql_delete.cc
index bef9ac2eed5..37f1325228d 100644
--- a/sql/sql_delete.cc
+++ b/sql/sql_delete.cc
@@ -917,9 +917,7 @@ bool mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
char path[FN_REFLEN];
TABLE *table;
bool error;
- uint closed_log_tables= 0, lock_logger= 0;
uint path_length;
- uint log_type;
DBUG_ENTER("mysql_truncate");
bzero((char*) &create_info,sizeof(create_info));
@@ -971,18 +969,6 @@ bool mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
DBUG_RETURN(TRUE);
}
- log_type= check_if_log_table(table_list->db_length, table_list->db,
- table_list->table_name_length,
- table_list->table_name, 1);
- /* close log tables in use */
- if (log_type)
- {
- lock_logger= 1;
- logger.lock();
- logger.close_log_table(log_type, FALSE);
- closed_log_tables= closed_log_tables | log_type;
- }
-
// Remove the .frm extension AIX 5.2 64-bit compiler bug (BUG#16155): this
// crashes, replacement works. *(path + path_length - reg_ext_length)=
// '\0';
@@ -1008,14 +994,6 @@ end:
VOID(pthread_mutex_lock(&LOCK_open));
unlock_table_name(thd, table_list);
VOID(pthread_mutex_unlock(&LOCK_open));
-
- if (opt_slow_log && (closed_log_tables & QUERY_LOG_SLOW))
- logger.reopen_log_table(QUERY_LOG_SLOW);
-
- if (opt_log && (closed_log_tables & QUERY_LOG_GENERAL))
- logger.reopen_log_table(QUERY_LOG_GENERAL);
- if (lock_logger)
- logger.unlock();
}
else if (error)
{
diff --git a/sql/sql_error.cc b/sql/sql_error.cc
index 5ebeba6109a..8bdb2e59ed5 100644
--- a/sql/sql_error.cc
+++ b/sql/sql_error.cc
@@ -137,6 +137,9 @@ MYSQL_ERROR *push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level,
level= MYSQL_ERROR::WARN_LEVEL_ERROR;
}
+ if (thd->handle_error(code, level))
+ DBUG_RETURN(NULL);
+
if (thd->spcont &&
thd->spcont->handle_error(code, level, thd))
{
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc
index 6d7e69e9ffc..6c6a4721369 100644
--- a/sql/sql_insert.cc
+++ b/sql/sql_insert.cc
@@ -2258,7 +2258,7 @@ pthread_handler_t handle_delayed_insert(void *arg)
}
/* open table */
- if (!(di->table=open_ltable(thd,&di->table_list,TL_WRITE_DELAYED)))
+ if (!(di->table=open_ltable(thd, &di->table_list, TL_WRITE_DELAYED, 0)))
{
thd->fatal_error(); // Abort waiting inserts
goto err;
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc
index 8ab4dee12ac..055dc1e8424 100644
--- a/sql/sql_lex.cc
+++ b/sql/sql_lex.cc
@@ -2367,12 +2367,129 @@ void st_select_lex_unit::set_limit(SELECT_LEX *sl)
/**
- Update the parsed tree with information about triggers that
- may be fired when executing this statement.
+ @brief Set the initial purpose of this TABLE_LIST object in the list of used
+ tables.
+
+ We need to track this information on table-by-table basis, since when this
+ table becomes an element of the pre-locked list, it's impossible to identify
+ which SQL sub-statement it has been originally used in.
+
+ E.g.:
+
+ User request: SELECT * FROM t1 WHERE f1();
+ FUNCTION f1(): DELETE FROM t2; RETURN 1;
+ BEFORE DELETE trigger on t2: INSERT INTO t3 VALUES (old.a);
+
+ For this user request, the pre-locked list will contain t1, t2, t3
+ table elements, each needed for different DML.
+
+ The trigger event map is updated to reflect INSERT, UPDATE, DELETE,
+ REPLACE, LOAD DATA, CREATE TABLE .. SELECT, CREATE TABLE ..
+ REPLACE SELECT statements, and additionally ON DUPLICATE KEY UPDATE
+ clause.
*/
void st_lex::set_trg_event_type_for_tables()
{
+ uint8 new_trg_event_map= 0;
+
+ /*
+ Some auxiliary operations
+ (e.g. GRANT processing) create TABLE_LIST instances outside
+ the parser. Additionally, some commands (e.g. OPTIMIZE) change
+ the lock type for a table only after parsing is done. Luckily,
+ these do not fire triggers and do not need to pre-load them.
+ For these TABLE_LISTs set_trg_event_type is never called, and
+ trg_event_map is always empty. That means that the pre-locking
+ algorithm will ignore triggers defined on these tables, if
+ any, and the execution will either fail with an assert in
+ sql_trigger.cc or with an error that a used table was not
+ pre-locked, in case of a production build.
+
+ TODO: this usage pattern creates unnecessary module dependencies
+ and should be rewritten to go through the parser.
+ Table list instances created outside the parser in most cases
+ refer to mysql.* system tables. It is not allowed to have
+ a trigger on a system table, but keeping track of
+ initialization provides extra safety in case this limitation
+ is circumvented.
+ */
+
+ switch (sql_command) {
+ case SQLCOM_LOCK_TABLES:
+ /*
+ On a LOCK TABLE, all triggers must be pre-loaded for this TABLE_LIST
+ when opening an associated TABLE.
+ */
+ new_trg_event_map= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_INSERT)) |
+ static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_UPDATE)) |
+ static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_DELETE));
+ break;
+ /*
+ Basic INSERT. If there is an additional ON DUPLIATE KEY UPDATE
+ clause, it will be handled later in this method.
+ */
+ case SQLCOM_INSERT: /* fall through */
+ case SQLCOM_INSERT_SELECT:
+ /*
+ LOAD DATA ... INFILE is expected to fire BEFORE/AFTER INSERT
+ triggers.
+ If the statement also has REPLACE clause, it will be
+ handled later in this method.
+ */
+ case SQLCOM_LOAD: /* fall through */
+ /*
+ REPLACE is semantically equivalent to INSERT. In case
+ of a primary or unique key conflict, it deletes the old
+ record and inserts a new one. So we also may need to
+ fire ON DELETE triggers. This functionality is handled
+ later in this method.
+ */
+ case SQLCOM_REPLACE: /* fall through */
+ case SQLCOM_REPLACE_SELECT:
+ /*
+ CREATE TABLE ... SELECT defaults to INSERT if the table or
+ view already exists. REPLACE option of CREATE TABLE ...
+ REPLACE SELECT is handled later in this method.
+ */
+ case SQLCOM_CREATE_TABLE:
+ new_trg_event_map|= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_INSERT));
+ break;
+ /* Basic update and multi-update */
+ case SQLCOM_UPDATE: /* fall through */
+ case SQLCOM_UPDATE_MULTI:
+ new_trg_event_map|= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_UPDATE));
+ break;
+ /* Basic delete and multi-delete */
+ case SQLCOM_DELETE: /* fall through */
+ case SQLCOM_DELETE_MULTI:
+ new_trg_event_map|= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_DELETE));
+ break;
+ default:
+ break;
+ }
+
+ switch (duplicates) {
+ case DUP_UPDATE:
+ new_trg_event_map|= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_UPDATE));
+ break;
+ case DUP_REPLACE:
+ new_trg_event_map|= static_cast<uint8>
+ (1 << static_cast<int>(TRG_EVENT_DELETE));
+ break;
+ case DUP_ERROR:
+ default:
+ break;
+ }
+
+
/*
Do not iterate over sub-selects, only the tables in the outermost
SELECT_LEX can be modified, if any.
@@ -2381,7 +2498,17 @@ void st_lex::set_trg_event_type_for_tables()
while (tables)
{
- tables->set_trg_event_type(this);
+ /*
+ This is a fast check to filter out statements that do
+ not change data, or tables on the right side, in case of
+ INSERT .. SELECT, CREATE TABLE .. SELECT and so on.
+ Here we also filter out OPTIMIZE statement and non-updateable
+ views, for which lock_type is TL_UNLOCK or TL_READ after
+ parsing.
+ */
+ if (static_cast<int>(tables->lock_type) >=
+ static_cast<int>(TL_WRITE_ALLOW_WRITE))
+ tables->trg_event_map= new_trg_event_map;
tables= tables->next_local;
}
}
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index da3a634ffd4..737ec320a69 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -197,8 +197,8 @@ void init_update_queries(void)
sql_command_flags[SQLCOM_CREATE_TABLE]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_CREATE_INDEX]= CF_CHANGES_DATA;
- sql_command_flags[SQLCOM_ALTER_TABLE]= CF_CHANGES_DATA;
- sql_command_flags[SQLCOM_TRUNCATE]= CF_CHANGES_DATA;
+ sql_command_flags[SQLCOM_ALTER_TABLE]= CF_CHANGES_DATA | CF_WRITE_LOGS_COMMAND;
+ sql_command_flags[SQLCOM_TRUNCATE]= CF_CHANGES_DATA | CF_WRITE_LOGS_COMMAND;
sql_command_flags[SQLCOM_DROP_TABLE]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_LOAD]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_CREATE_DB]= CF_CHANGES_DATA;
@@ -211,7 +211,7 @@ void init_update_queries(void)
sql_command_flags[SQLCOM_DROP_VIEW]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_CREATE_EVENT]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_ALTER_EVENT]= CF_CHANGES_DATA;
- sql_command_flags[SQLCOM_DROP_EVENT]= CF_CHANGES_DATA;
+ sql_command_flags[SQLCOM_DROP_EVENT]= CF_CHANGES_DATA;
sql_command_flags[SQLCOM_UPDATE]= CF_CHANGES_DATA | CF_HAS_ROW_COUNT;
sql_command_flags[SQLCOM_UPDATE_MULTI]= CF_CHANGES_DATA | CF_HAS_ROW_COUNT;
@@ -275,6 +275,14 @@ void init_update_queries(void)
*/
sql_command_flags[SQLCOM_CALL]= CF_HAS_ROW_COUNT;
sql_command_flags[SQLCOM_EXECUTE]= CF_HAS_ROW_COUNT;
+
+ /*
+ The following admin table operations are allowed
+ on log tables.
+ */
+ sql_command_flags[SQLCOM_REPAIR]= CF_WRITE_LOGS_COMMAND;
+ sql_command_flags[SQLCOM_OPTIMIZE]= CF_WRITE_LOGS_COMMAND;
+ sql_command_flags[SQLCOM_ANALYZE]= CF_WRITE_LOGS_COMMAND;
}
@@ -284,6 +292,17 @@ bool is_update_query(enum enum_sql_command command)
return (sql_command_flags[command] & CF_CHANGES_DATA) != 0;
}
+/**
+ Check if a sql command is allowed to write to log tables.
+ @param command The SQL command
+ @return true if writing is allowed
+*/
+bool is_log_table_write_query(enum enum_sql_command command)
+{
+ DBUG_ASSERT(command >= 0 && command <= SQLCOM_END);
+ return (sql_command_flags[command] & CF_WRITE_LOGS_COMMAND) != 0;
+}
+
void execute_init_command(THD *thd, sys_var_str *init_command_var,
rw_lock_t *var_mutex)
{
@@ -518,7 +537,7 @@ int mysql_table_dump(THD *thd, LEX_STRING *db, char *tbl_name)
if (lower_case_table_names)
my_casedn_str(files_charset_info, tbl_name);
- if (!(table=open_ltable(thd, table_list, TL_READ_NO_INSERT)))
+ if (!(table=open_ltable(thd, table_list, TL_READ_NO_INSERT, 0)))
DBUG_RETURN(1);
if (check_one_table_access(thd, SELECT_ACL, table_list))
@@ -5071,7 +5090,11 @@ bool check_merge_table_access(THD *thd, char *db,
#ifndef EMBEDDED_LIBRARY
-#define used_stack(A,B) (long)(A > B ? A - B : B - A)
+#if STACK_DIRECTION < 0
+#define used_stack(A,B) (long) (A - B)
+#else
+#define used_stack(A,B) (long) (B - A)
+#endif
#ifndef DBUG_OFF
long max_stack_used;
@@ -5179,7 +5202,7 @@ void mysql_reset_thd_for_next_command(THD *thd)
thd->transaction.all.modified_non_trans_table= FALSE;
}
DBUG_ASSERT(thd->security_ctx== &thd->main_security_ctx);
- thd->tmp_table_used= 0;
+ thd->thread_specific_used= FALSE;
if (!thd->in_sub_stmt)
{
if (opt_bin_log)
diff --git a/sql/sql_plugin.cc b/sql/sql_plugin.cc
index a44e20b8daf..0d088063462 100644
--- a/sql/sql_plugin.cc
+++ b/sql/sql_plugin.cc
@@ -1617,7 +1617,7 @@ bool mysql_install_plugin(THD *thd, const LEX_STRING *name, const LEX_STRING *dl
DBUG_RETURN(TRUE);
/* need to open before acquiring LOCK_plugin or it will deadlock */
- if (! (table = open_ltable(thd, &tables, TL_WRITE)))
+ if (! (table = open_ltable(thd, &tables, TL_WRITE, 0)))
DBUG_RETURN(TRUE);
pthread_mutex_lock(&LOCK_plugin);
@@ -1674,7 +1674,7 @@ bool mysql_uninstall_plugin(THD *thd, const LEX_STRING *name)
tables.table_name= tables.alias= (char *)"plugin";
/* need to open before acquiring LOCK_plugin or it will deadlock */
- if (! (table= open_ltable(thd, &tables, TL_WRITE)))
+ if (! (table= open_ltable(thd, &tables, TL_WRITE, 0)))
DBUG_RETURN(TRUE);
pthread_mutex_lock(&LOCK_plugin);
diff --git a/sql/sql_rename.cc b/sql/sql_rename.cc
index f5e1b8988f3..750bcd50479 100644
--- a/sql/sql_rename.cc
+++ b/sql/sql_rename.cc
@@ -37,7 +37,6 @@ bool mysql_rename_tables(THD *thd, TABLE_LIST *table_list, bool silent)
TABLE_LIST *ren_table= 0;
int to_table;
char *rename_log_table[2]= {NULL, NULL};
- int disable_logs= 0;
DBUG_ENTER("mysql_rename_tables");
/*
@@ -80,12 +79,6 @@ bool mysql_rename_tables(THD *thd, TABLE_LIST *table_list, bool silent)
ren_table->table_name, 1)))
{
/*
- Log table encoutered we will need to disable and lock logs
- for duration of rename.
- */
- disable_logs= TRUE;
-
- /*
as we use log_table_rename as an array index, we need it to start
with 0, while QUERY_LOG_SLOW == 1 and QUERY_LOG_GENERAL == 2.
So, we shift the value to start with 0;
@@ -136,12 +129,6 @@ bool mysql_rename_tables(THD *thd, TABLE_LIST *table_list, bool silent)
rename_log_table[1]);
DBUG_RETURN(1);
}
-
- if (disable_logs)
- {
- logger.lock();
- logger.tmp_close_log_tables(thd);
- }
}
pthread_mutex_lock(&LOCK_open);
@@ -200,13 +187,6 @@ bool mysql_rename_tables(THD *thd, TABLE_LIST *table_list, bool silent)
pthread_mutex_unlock(&LOCK_open);
err:
- /* enable logging back if needed */
- if (disable_logs)
- {
- if (logger.reopen_log_tables())
- error= TRUE;
- logger.unlock();
- }
start_waiting_global_read_lock(thd);
DBUG_RETURN(error);
}
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 192709cea55..f333e754ff7 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -13334,7 +13334,8 @@ static int
join_init_cache(THD *thd,JOIN_TAB *tables,uint table_count)
{
reg1 uint i;
- uint length,blobs,size;
+ uint length, blobs;
+ size_t size;
CACHE_FIELD *copy,**blob_ptr;
JOIN_CACHE *cache;
JOIN_TAB *join_tab;
@@ -13450,7 +13451,7 @@ store_record_in_cache(JOIN_CACHE *cache)
length=cache->length;
if (cache->blobs)
length+=used_blob_length(cache->blob_ptr);
- if ((last_record=(length+cache->length > (uint) (cache->end - pos))))
+ if ((last_record= (length + cache->length > (size_t) (cache->end - pos))))
cache->ptr_record=cache->records;
/*
@@ -13496,7 +13497,7 @@ store_record_in_cache(JOIN_CACHE *cache)
}
}
cache->pos=pos;
- return last_record || (uint) (cache->end -pos) < cache->length;
+ return last_record || (size_t) (cache->end - pos) < cache->length;
}
diff --git a/sql/sql_servers.cc b/sql/sql_servers.cc
index ac5ea6f4ac4..911372d5f4e 100644
--- a/sql/sql_servers.cc
+++ b/sql/sql_servers.cc
@@ -366,7 +366,7 @@ insert_server(THD *thd, FOREIGN_SERVER *server)
tables.alias= tables.table_name= (char*) "servers";
/* need to open before acquiring THR_LOCK_plugin or it will deadlock */
- if (! (table= open_ltable(thd, &tables, TL_WRITE)))
+ if (! (table= open_ltable(thd, &tables, TL_WRITE, 0)))
goto end;
/* insert the server into the table */
@@ -588,7 +588,7 @@ int drop_server(THD *thd, LEX_SERVER_OPTIONS *server_options)
if ((error= delete_server_record_in_cache(server_options)))
goto end;
- if (! (table= open_ltable(thd, &tables, TL_WRITE)))
+ if (! (table= open_ltable(thd, &tables, TL_WRITE, 0)))
{
error= my_errno;
goto end;
@@ -705,7 +705,7 @@ int update_server(THD *thd, FOREIGN_SERVER *existing, FOREIGN_SERVER *altered)
tables.db= (char*)"mysql";
tables.alias= tables.table_name= (char*)"servers";
- if (!(table= open_ltable(thd, &tables, TL_WRITE)))
+ if (!(table= open_ltable(thd, &tables, TL_WRITE, 0)))
{
error= my_errno;
goto end;
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index 1732bacdc75..a0c3355b49a 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -2176,9 +2176,6 @@ void calc_sum_of_all_status(STATUS_VAR *to)
}
-/* INFORMATION_SCHEMA name */
-LEX_STRING INFORMATION_SCHEMA_NAME= { C_STRING_WITH_LEN("information_schema")};
-
/* This is only used internally, but we need it here as a forward reference */
extern ST_SCHEMA_TABLE schema_tables[];
diff --git a/sql/sql_table.cc b/sql/sql_table.cc
index a10a5b15288..dd92c47d29b 100644
--- a/sql/sql_table.cc
+++ b/sql/sql_table.cc
@@ -1513,7 +1513,7 @@ int mysql_rm_table_part2(THD *thd, TABLE_LIST *tables, bool if_exists,
table->db_type= share->db_type();
/* Disable drop of enabled log tables */
- if (share && share->log_table &&
+ if (share && (share->table_category == TABLE_CATEGORY_PERFORMANCE) &&
check_if_log_table(table->db_length, table->db,
table->table_name_length, table->table_name, 1))
{
@@ -1656,7 +1656,7 @@ int mysql_rm_table_part2(THD *thd, TABLE_LIST *tables, bool if_exists,
on the table name.
*/
pthread_mutex_unlock(&LOCK_open);
- thd->tmp_table_used= tmp_table_deleted;
+ thd->thread_specific_used|= tmp_table_deleted;
error= 0;
if (wrong_tables.length())
{
@@ -2789,6 +2789,8 @@ mysql_prepare_create_table(THD *thd, HA_CREATE_INFO *create_info,
length);
push_warning(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
ER_TOO_LONG_KEY, warn_buff);
+ /* Align key length to multibyte char boundary */
+ length-= length % sql_field->charset->mbmaxlen;
}
else
{
@@ -2819,8 +2821,6 @@ mysql_prepare_create_table(THD *thd, HA_CREATE_INFO *create_info,
if (length > file->max_key_part_length() && key->type != Key::FULLTEXT)
{
length= file->max_key_part_length();
- /* Align key length to multibyte char boundary */
- length-= length % sql_field->charset->mbmaxlen;
if (key->type == Key::MULTIPLE)
{
/* not a critical problem */
@@ -2829,6 +2829,8 @@ mysql_prepare_create_table(THD *thd, HA_CREATE_INFO *create_info,
length);
push_warning(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
ER_TOO_LONG_KEY, warn_buff);
+ /* Align key length to multibyte char boundary */
+ length-= length % sql_field->charset->mbmaxlen;
}
else
{
@@ -3406,7 +3408,7 @@ bool mysql_create_table_no_lock(THD *thd,
(void) rm_temporary_table(create_info->db_type, path);
goto unlock_and_end;
}
- thd->tmp_table_used= 1;
+ thd->thread_specific_used= TRUE;
}
/*
@@ -3966,7 +3968,7 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
Item *item;
Protocol *protocol= thd->protocol;
LEX *lex= thd->lex;
- int result_code, disable_logs= 0;
+ int result_code;
DBUG_ENTER("mysql_admin_table");
if (end_active_trans(thd))
@@ -4014,22 +4016,6 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
if (view_operator_func == NULL)
table->required_type=FRMTYPE_TABLE;
- /*
- If we want to perform an admin operation on the log table
- (E.g. rename) and lock_type >= TL_READ_NO_INSERT disable
- log tables
- */
-
- if (check_if_log_table(table->db_length, table->db,
- table->table_name_length,
- table->table_name, 1) &&
- lock_type >= TL_READ_NO_INSERT)
- {
- disable_logs= 1;
- logger.lock();
- logger.tmp_close_log_tables(thd);
- }
-
open_and_lock_tables(thd, table);
thd->no_warnings_for_error= 0;
table->next_global= save_next_global;
@@ -4099,8 +4085,7 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
}
/* Close all instances of the table to allow repair to rename files */
- if (lock_type == TL_WRITE && table->table->s->version &&
- !table->table->s->log_table)
+ if (lock_type == TL_WRITE && table->table->s->version)
{
pthread_mutex_lock(&LOCK_open);
const char *old_message=thd->enter_cond(&COND_refresh, &LOCK_open,
@@ -4130,7 +4115,8 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
goto err;
}
- if (operator_func == &handler::ha_repair)
+ if (operator_func == &handler::ha_repair &&
+ !(check_opt->sql_flags & TT_USEFRM))
{
if ((table->table->file->check_old_types() == HA_ADMIN_NEEDS_ALTER) ||
(table->table->file->ha_check_for_upgrade(check_opt) ==
@@ -4258,7 +4244,7 @@ send_result_message:
close_thread_tables(thd);
if (!result_code) // recreation went ok
{
- if ((table->table= open_ltable(thd, table, lock_type)) &&
+ if ((table->table= open_ltable(thd, table, lock_type, 0)) &&
((result_code= table->table->file->analyze(thd, check_opt)) > 0))
result_code= 0; // analyze went ok
}
@@ -4324,10 +4310,9 @@ send_result_message:
}
if (table->table)
{
- /* in the below check we do not refresh the log tables */
if (fatal_error)
table->table->s->version=0; // Force close of table
- else if (open_for_modify && !table->table->s->log_table)
+ else if (open_for_modify)
{
if (table->table->s->tmp_table)
table->table->file->info(HA_STATUS_CONST);
@@ -4350,24 +4335,11 @@ send_result_message:
}
send_eof(thd);
- if (disable_logs)
- {
- if (logger.reopen_log_tables())
- my_error(ER_CANT_ACTIVATE_LOG, MYF(0));
- logger.unlock();
- }
DBUG_RETURN(FALSE);
err:
ha_autocommit_or_rollback(thd, 1);
close_thread_tables(thd); // Shouldn't be needed
- /* enable logging back if needed */
- if (disable_logs)
- {
- if (logger.reopen_log_tables())
- my_error(ER_CANT_ACTIVATE_LOG, MYF(0));
- logger.unlock();
- }
if (table)
table->table=0;
DBUG_RETURN(TRUE);
@@ -4812,7 +4784,7 @@ mysql_discard_or_import_tablespace(THD *thd,
not complain when we lock the table
*/
thd->tablespace_op= TRUE;
- if (!(table=open_ltable(thd,table_list,TL_WRITE)))
+ if (!(table=open_ltable(thd, table_list, TL_WRITE, 0)))
{
thd->tablespace_op=FALSE;
DBUG_RETURN(-1);
@@ -5728,7 +5700,7 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name,
#ifdef WITH_PARTITION_STORAGE_ENGINE
if (alter_info->flags & ALTER_PARTITION)
{
- my_error(ER_WRONG_USAGE, MYF(0), "PARTITION", "log table");
+ my_error(ER_WRONG_USAGE, MYF(0), "PARTITION", "log table");
DBUG_RETURN(TRUE);
}
#endif
@@ -5817,7 +5789,7 @@ view_err:
start_waiting_global_read_lock(thd);
DBUG_RETURN(error);
}
- if (!(table=open_ltable(thd,table_list,TL_WRITE_ALLOW_READ)))
+ if (!(table=open_ltable(thd, table_list, TL_WRITE_ALLOW_READ, 0)))
DBUG_RETURN(TRUE);
table->use_all_columns();
@@ -6983,7 +6955,7 @@ bool mysql_checksum_table(THD *thd, TABLE_LIST *tables,
strxmov(table_name, table->db ,".", table->table_name, NullS);
- t= table->table= open_ltable(thd, table, TL_READ);
+ t= table->table= open_ltable(thd, table, TL_READ, 0);
thd->clear_error(); // these errors shouldn't get client
protocol->prepare_for_resend();
diff --git a/sql/sql_udf.cc b/sql/sql_udf.cc
index 8361fc64f33..10bb7844d88 100644
--- a/sql/sql_udf.cc
+++ b/sql/sql_udf.cc
@@ -472,7 +472,7 @@ int mysql_create_function(THD *thd,udf_func *udf)
tables.db= (char*) "mysql";
tables.table_name= tables.alias= (char*) "func";
/* Allow creation of functions even if we can't open func table */
- if (!(table = open_ltable(thd,&tables,TL_WRITE)))
+ if (!(table = open_ltable(thd, &tables, TL_WRITE, 0)))
goto err;
table->use_all_columns();
restore_record(table, s->default_values); // Default values for fields
@@ -547,7 +547,7 @@ int mysql_drop_function(THD *thd,const LEX_STRING *udf_name)
bzero((char*) &tables,sizeof(tables));
tables.db=(char*) "mysql";
tables.table_name= tables.alias= (char*) "func";
- if (!(table = open_ltable(thd,&tables,TL_WRITE)))
+ if (!(table = open_ltable(thd, &tables, TL_WRITE, 0)))
goto err;
table->use_all_columns();
table->field[0]->store(exact_name_str, exact_name_len, &my_charset_bin);
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 855c8dede5f..591f2c46d4d 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -7277,7 +7277,7 @@ join_table:
so that [INNER | CROSS] JOIN is properly nested as other
left-associative joins.
*/
- table_ref %prec TABLE_REF_PRIORITY normal_join table_ref
+ table_ref normal_join table_ref %prec TABLE_REF_PRIORITY
{ MYSQL_YYABORT_UNLESS($1 && ($$=$3)); }
| table_ref STRAIGHT_JOIN table_factor
{ MYSQL_YYABORT_UNLESS($1 && ($$=$3)); $3->straight=1; }
diff --git a/sql/table.cc b/sql/table.cc
index a445e2d2816..5e036abe6b1 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -21,6 +21,18 @@
#include <m_ctype.h>
#include "my_md5.h"
+/* INFORMATION_SCHEMA name */
+LEX_STRING INFORMATION_SCHEMA_NAME= {C_STRING_WITH_LEN("information_schema")};
+
+/* MYSQL_SCHEMA name */
+LEX_STRING MYSQL_SCHEMA_NAME= {C_STRING_WITH_LEN("mysql")};
+
+/* GENERAL_LOG name */
+LEX_STRING GENERAL_LOG_NAME= {C_STRING_WITH_LEN("general_log")};
+
+/* SLOW_LOG name */
+LEX_STRING SLOW_LOG_NAME= {C_STRING_WITH_LEN("slow_log")};
+
/* Functions defined in this file */
void open_table_error(TABLE_SHARE *share, int error, int db_errno,
@@ -31,6 +43,7 @@ static void fix_type_pointers(const char ***array, TYPELIB *point_to_type,
uint types, char **names);
static uint find_field(Field **fields, uchar *record, uint start, uint length);
+inline bool is_system_table_name(const char *name, uint length);
/**************************************************************************
Object_creation_ctx implementation.
@@ -192,6 +205,49 @@ char *fn_rext(char *name)
return name + strlen(name);
}
+TABLE_CATEGORY get_table_category(const LEX_STRING *db, const LEX_STRING *name)
+{
+ DBUG_ASSERT(db != NULL);
+ DBUG_ASSERT(name != NULL);
+
+ if ((db->length == INFORMATION_SCHEMA_NAME.length) &&
+ (my_strcasecmp(system_charset_info,
+ INFORMATION_SCHEMA_NAME.str,
+ db->str) == 0))
+ {
+ return TABLE_CATEGORY_INFORMATION;
+ }
+
+ if ((db->length == MYSQL_SCHEMA_NAME.length) &&
+ (my_strcasecmp(system_charset_info,
+ MYSQL_SCHEMA_NAME.str,
+ db->str) == 0))
+ {
+ if (is_system_table_name(name->str, name->length))
+ {
+ return TABLE_CATEGORY_SYSTEM;
+ }
+
+ if ((name->length == GENERAL_LOG_NAME.length) &&
+ (my_strcasecmp(system_charset_info,
+ GENERAL_LOG_NAME.str,
+ name->str) == 0))
+ {
+ return TABLE_CATEGORY_PERFORMANCE;
+ }
+
+ if ((name->length == SLOW_LOG_NAME.length) &&
+ (my_strcasecmp(system_charset_info,
+ SLOW_LOG_NAME.str,
+ name->str) == 0))
+ {
+ return TABLE_CATEGORY_PERFORMANCE;
+ }
+ }
+
+ return TABLE_CATEGORY_USER;
+}
+
/*
Allocate a setup TABLE_SHARE structure
@@ -297,7 +353,8 @@ void init_tmp_table_share(TABLE_SHARE *share, const char *key,
bzero((char*) share, sizeof(*share));
init_sql_alloc(&share->mem_root, TABLE_ALLOC_BLOCK_SIZE, 0);
- share->tmp_table= INTERNAL_TMP_TABLE;
+ share->table_category= TABLE_CATEGORY_TEMPORARY;
+ share->tmp_table= INTERNAL_TMP_TABLE;
share->db.str= (char*) key;
share->db.length= strlen(key);
share->table_cache_key.str= (char*) key;
@@ -544,28 +601,11 @@ int open_table_def(THD *thd, TABLE_SHARE *share, uint db_flags)
*root_ptr= &share->mem_root;
error= open_binary_frm(thd, share, head, file);
*root_ptr= old_root;
-
- if (share->db.length == 5 && !(lower_case_table_names ?
- my_strcasecmp(system_charset_info, share->db.str, "mysql") :
- strcmp(share->db.str, "mysql")))
- {
- /*
- We can't mark all tables in 'mysql' database as system since we don't
- allow to lock such tables for writing with any other tables (even with
- other system tables) and some privilege tables need this.
- */
- share->system_table= is_system_table_name(share->table_name.str,
- share->table_name.length);
- if (!share->system_table)
- {
- share->log_table= check_if_log_table(share->db.length, share->db.str,
- share->table_name.length,
- share->table_name.str, 0);
- }
- }
error_given= 1;
}
+ share->table_category= get_table_category(& share->db, & share->table_name);
+
if (!error)
thd->status_var.opened_shares++;
@@ -2853,135 +2893,6 @@ void st_table::reset_item_list(List<Item> *item_list) const
}
}
-
-/**
- Set the initial purpose of this TABLE_LIST object in the list of
- used tables. We need to track this information on table-by-
- table basis, since when this table becomes an element of the
- pre-locked list, it's impossible to identify which SQL
- sub-statement it has been originally used in.
-
- E.g.:
-
- User request: SELECT * FROM t1 WHERE f1();
- FUNCTION f1(): DELETE FROM t2; RETURN 1;
- BEFORE DELETE trigger on t2: INSERT INTO t3 VALUES (old.a);
-
- For this user request, the pre-locked list will contain t1, t2, t3
- table elements, each needed for different DML.
-
- This method is called immediately after parsing for tables
- of the table list of the top-level select lex.
-
- The trigger event map is updated to reflect INSERT, UPDATE, DELETE,
- REPLACE, LOAD DATA, CREATE TABLE .. SELECT, CREATE TABLE ..
- REPLACE SELECT statements, and additionally ON DUPLICATE KEY UPDATE
- clause.
-*/
-
-void
-TABLE_LIST::set_trg_event_type(const st_lex *lex)
-{
- enum trg_event_type trg_event;
-
- /*
- Some auxiliary operations
- (e.g. GRANT processing) create TABLE_LIST instances outside
- the parser. Additionally, some commands (e.g. OPTIMIZE) change
- the lock type for a table only after parsing is done. Luckily,
- these do not fire triggers and do not need to pre-load them.
- For these TABLE_LISTs set_trg_event_type is never called, and
- trg_event_map is always empty. That means that the pre-locking
- algorithm will ignore triggers defined on these tables, if
- any, and the execution will either fail with an assert in
- sql_trigger.cc or with an error that a used table was not
- pre-locked, in case of a production build.
-
- TODO: this usage pattern creates unnecessary module dependencies
- and should be rewritten to go through the parser.
- Table list instances created outside the parser in most cases
- refer to mysql.* system tables. It is not allowed to have
- a trigger on a system table, but keeping track of
- initialization provides extra safety in case this limitation
- is circumvented.
- */
-
- /*
- This is a fast check to filter out statements that do
- not change data, or tables on the right side, in case of
- INSERT .. SELECT, CREATE TABLE .. SELECT and so on.
- Here we also filter out OPTIMIZE statement and non-updateable
- views, for which lock_type is TL_UNLOCK or TL_READ after
- parsing.
- */
- if (static_cast<int>(lock_type) < static_cast<int>(TL_WRITE_ALLOW_WRITE))
- return;
-
- switch (lex->sql_command) {
- /*
- Basic INSERT. If there is an additional ON DUPLIATE KEY UPDATE
- clause, it will be handled later in this method.
- */
- case SQLCOM_INSERT: /* fall through */
- case SQLCOM_INSERT_SELECT:
- /*
- LOAD DATA ... INFILE is expected to fire BEFORE/AFTER INSERT
- triggers.
- If the statement also has REPLACE clause, it will be
- handled later in this method.
- */
- case SQLCOM_LOAD: /* fall through */
- /*
- REPLACE is semantically equivalent to INSERT. In case
- of a primary or unique key conflict, it deletes the old
- record and inserts a new one. So we also may need to
- fire ON DELETE triggers. This functionality is handled
- later in this method.
- */
- case SQLCOM_REPLACE: /* fall through */
- case SQLCOM_REPLACE_SELECT:
- /*
- CREATE TABLE ... SELECT defaults to INSERT if the table or
- view already exists. REPLACE option of CREATE TABLE ...
- REPLACE SELECT is handled later in this method.
- */
- case SQLCOM_CREATE_TABLE:
- trg_event= TRG_EVENT_INSERT;
- break;
- /* Basic update and multi-update */
- case SQLCOM_UPDATE: /* fall through */
- case SQLCOM_UPDATE_MULTI:
- trg_event= TRG_EVENT_UPDATE;
- break;
- /* Basic delete and multi-delete */
- case SQLCOM_DELETE: /* fall through */
- case SQLCOM_DELETE_MULTI:
- trg_event= TRG_EVENT_DELETE;
- break;
- default:
- /*
- OK to return, since value of 'duplicates' is irrelevant
- for non-updating commands.
- */
- return;
- }
- trg_event_map|= static_cast<uint8>(1 << static_cast<int>(trg_event));
-
- switch (lex->duplicates) {
- case DUP_UPDATE:
- trg_event= TRG_EVENT_UPDATE;
- break;
- case DUP_REPLACE:
- trg_event= TRG_EVENT_DELETE;
- break;
- case DUP_ERROR:
- default:
- return;
- }
- trg_event_map|= static_cast<uint8>(1 << static_cast<int>(trg_event));
-}
-
-
/*
calculate md5 of query
diff --git a/sql/table.h b/sql/table.h
index a276a9f32fd..e46036f3ee9 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -140,6 +140,100 @@ class Field_timestamp;
class Field_blob;
class Table_triggers_list;
+/**
+ Category of table found in the table share.
+*/
+enum enum_table_category
+{
+ /**
+ Unknown value.
+ */
+ TABLE_UNKNOWN_CATEGORY=0,
+
+ /**
+ Temporary table.
+ The table is visible only in the session.
+ Therefore,
+ - FLUSH TABLES WITH READ LOCK
+ - SET GLOBAL READ_ONLY = ON
+ do not apply to this table.
+ Note that LOCK TABLE <t> FOR READ/WRITE
+ can be used on temporary tables.
+ Temporary tables are not part of the table cache.
+ */
+ TABLE_CATEGORY_TEMPORARY=1,
+
+ /**
+ User table.
+ These tables do honor:
+ - LOCK TABLE <t> FOR READ/WRITE
+ - FLUSH TABLES WITH READ LOCK
+ - SET GLOBAL READ_ONLY = ON
+ User tables are cached in the table cache.
+ */
+ TABLE_CATEGORY_USER=2,
+
+ /**
+ System table, maintained by the server.
+ These tables do honor:
+ - LOCK TABLE <t> FOR READ/WRITE
+ - FLUSH TABLES WITH READ LOCK
+ - SET GLOBAL READ_ONLY = ON
+ Typically, writes to system tables are performed by
+ the server implementation, not explicitly be a user.
+ System tables are cached in the table cache.
+ */
+ TABLE_CATEGORY_SYSTEM=3,
+
+ /**
+ Information schema tables.
+ These tables are an interface provided by the system
+ to inspect the system metadata.
+ These tables do *not* honor:
+ - LOCK TABLE <t> FOR READ/WRITE
+ - FLUSH TABLES WITH READ LOCK
+ - SET GLOBAL READ_ONLY = ON
+ as there is no point in locking explicitely
+ an INFORMATION_SCHEMA table.
+ Nothing is directly written to information schema tables.
+ Note that this value is not used currently,
+ since information schema tables are not shared,
+ but implemented as session specific temporary tables.
+ */
+ /*
+ TODO: Fixing the performance issues of I_S will lead
+ to I_S tables in the table cache, which should use
+ this table type.
+ */
+ TABLE_CATEGORY_INFORMATION=4,
+
+ /**
+ Performance schema tables.
+ These tables are an interface provided by the system
+ to inspect the system performance data.
+ These tables do *not* honor:
+ - LOCK TABLE <t> FOR READ/WRITE
+ - FLUSH TABLES WITH READ LOCK
+ - SET GLOBAL READ_ONLY = ON
+ as there is no point in locking explicitely
+ a PERFORMANCE_SCHEMA table.
+ An example of PERFORMANCE_SCHEMA tables are:
+ - mysql.slow_log
+ - mysql.general_log,
+ which *are* updated even when there is either
+ a GLOBAL READ LOCK or a GLOBAL READ_ONLY in effect.
+ User queries do not write directly to these tables
+ (there are exceptions for log tables).
+ The server implementation perform writes.
+ Performance tables are cached in the table cache.
+ */
+ TABLE_CATEGORY_PERFORMANCE=5
+};
+typedef enum enum_table_category TABLE_CATEGORY;
+
+TABLE_CATEGORY get_table_category(const LEX_STRING *db,
+ const LEX_STRING *name);
+
/*
This structure is shared between different table objects. There is one
instance of table share per one table in the database.
@@ -148,6 +242,10 @@ class Table_triggers_list;
typedef struct st_table_share
{
st_table_share() {} /* Remove gcc warning */
+
+ /** Category of this table. */
+ TABLE_CATEGORY table_category;
+
/* hash of field names (contains pointers to elements of field array) */
HASH name_hash; /* hash of field names */
MEM_ROOT mem_root;
@@ -259,18 +357,6 @@ typedef struct st_table_share
*/
int cached_row_logging_check;
- /*
- TRUE if this is a system table like 'mysql.proc', which we want to be
- able to open and lock even when we already have some tables open and
- locked. To avoid deadlocks we have to put certain restrictions on
- locking of this table for writing. FALSE - otherwise.
- */
- bool system_table;
- /*
- This flag is set for the log tables. Used during FLUSH instances to skip
- log tables, while closing tables (since logs must be always available)
- */
- bool log_table;
#ifdef WITH_PARTITION_STORAGE_ENGINE
bool auto_partitioned;
const char *partition_info;
@@ -334,6 +420,16 @@ typedef struct st_table_share
set_table_cache_key(key_buff, key_length);
}
+ inline bool honor_global_locks()
+ {
+ return ((table_category == TABLE_CATEGORY_USER)
+ || (table_category == TABLE_CATEGORY_SYSTEM));
+ }
+
+ inline bool require_write_privileges()
+ {
+ return (table_category == TABLE_CATEGORY_PERFORMANCE);
+ }
} TABLE_SHARE;
@@ -1052,7 +1148,6 @@ struct TABLE_LIST
*/
bool process_index_hints(TABLE *table);
- void set_trg_event_type(const st_lex *lex);
private:
bool prep_check_option(THD *thd, uint8 check_opt_type);
bool prep_where(THD *thd, Item **conds, bool no_where_clause);
diff --git a/sql/tztime.cc b/sql/tztime.cc
index 0c717dd2ece..14192d06978 100644
--- a/sql/tztime.cc
+++ b/sql/tztime.cc
@@ -807,19 +807,6 @@ sec_since_epoch(int year, int mon, int mday, int hour, int min ,int sec)
SECS_PER_MIN + sec;
}
-
- /*
- Works like sec_since_epoch but expects MYSQL_TIME structure as parameter.
-*/
-
-my_time_t
-sec_since_epoch_TIME(MYSQL_TIME *t)
-{
- return sec_since_epoch(t->year, t->month, t->day,
- t->hour, t->minute, t->second);
-}
-
-
/*
Converts local time in broken down MYSQL_TIME representation to my_time_t
representation.
@@ -1425,7 +1412,9 @@ Time_zone_offset::get_name() const
static Time_zone_utc tz_UTC;
static Time_zone_system tz_SYSTEM;
+static Time_zone_offset tz_OFFSET0(0);
+Time_zone *my_tz_OFFSET0= &tz_OFFSET0;
Time_zone *my_tz_UTC= &tz_UTC;
Time_zone *my_tz_SYSTEM= &tz_SYSTEM;
diff --git a/sql/tztime.h b/sql/tztime.h
index f7cc7042d79..ddd80b88bf2 100644
--- a/sql/tztime.h
+++ b/sql/tztime.h
@@ -59,6 +59,7 @@ public:
extern Time_zone * my_tz_UTC;
extern Time_zone * my_tz_SYSTEM;
+extern Time_zone * my_tz_OFFSET0;
extern Time_zone * my_tz_find(THD *thd, const String *name);
extern my_bool my_tz_init(THD *org_thd, const char *default_tzname, my_bool bootstrap);
extern void my_tz_free();
diff --git a/storage/archive/ha_archive.cc b/storage/archive/ha_archive.cc
index bdc59cbe795..6696eac2fbb 100644
--- a/storage/archive/ha_archive.cc
+++ b/storage/archive/ha_archive.cc
@@ -436,6 +436,9 @@ int ha_archive::init_archive_writer()
}
+/*
+ No locks are required because it is associated with just one handler instance
+*/
int ha_archive::init_archive_reader()
{
DBUG_ENTER("ha_archive::init_archive_reader");
@@ -794,15 +797,16 @@ int ha_archive::write_row(uchar *buf)
if (share->crashed)
DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
- if (!share->archive_write_open)
- if (init_archive_writer())
- DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
-
ha_statistic_increment(&SSV::ha_write_count);
if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_INSERT)
table->timestamp_field->set_time();
pthread_mutex_lock(&share->mutex);
+ if (!share->archive_write_open)
+ if (init_archive_writer())
+ DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
+
+
if (table->next_number_field && record == table->record[0])
{
KEY *mkey= &table->s->key_info[0]; // We only support one key right now
@@ -992,24 +996,6 @@ int ha_archive::rnd_init(bool scan)
{
DBUG_PRINT("info", ("archive will retrieve %llu rows",
(unsigned long long) scan_rows));
- stats.records= 0;
-
- /*
- If dirty, we lock, and then reset/flush the data.
- I found that just calling azflush() doesn't always work.
- */
- pthread_mutex_lock(&share->mutex);
- scan_rows= share->rows_recorded;
- if (share->dirty == TRUE)
- {
- if (share->dirty == TRUE)
- {
- DBUG_PRINT("ha_archive", ("archive flushing out rows for scan"));
- azflush(&(share->archive_write), Z_SYNC_FLUSH);
- share->dirty= FALSE;
- }
- }
- pthread_mutex_unlock(&share->mutex);
if (read_data_header(&archive))
DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
@@ -1223,9 +1209,7 @@ int ha_archive::rnd_next(uchar *buf)
current_position= aztell(&archive);
rc= get_row(&archive, buf);
-
- if (rc != HA_ERR_END_OF_FILE)
- stats.records++;
+ table->status=rc ? STATUS_NOT_FOUND: 0;
DBUG_RETURN(rc);
}
@@ -1461,12 +1445,33 @@ void ha_archive::update_create_info(HA_CREATE_INFO *create_info)
int ha_archive::info(uint flag)
{
DBUG_ENTER("ha_archive::info");
+
+ /*
+ If dirty, we lock, and then reset/flush the data.
+ I found that just calling azflush() doesn't always work.
+ */
+ pthread_mutex_lock(&share->mutex);
+ if (share->dirty == TRUE)
+ {
+ if (share->dirty == TRUE)
+ {
+ DBUG_PRINT("ha_archive", ("archive flushing out rows for scan"));
+ azflush(&(share->archive_write), Z_SYNC_FLUSH);
+ share->dirty= FALSE;
+ }
+ }
+
/*
This should be an accurate number now, though bulk and delayed inserts can
cause the number to be inaccurate.
*/
stats.records= share->rows_recorded;
+ pthread_mutex_unlock(&share->mutex);
+
+ scan_rows= stats.records;
stats.deleted= 0;
+
+ DBUG_PRINT("ha_archive", ("Stats rows is %d\n", (int)stats.records));
/* Costs quite a bit more to get all information */
if (flag & HA_STATUS_TIME)
{
@@ -1486,7 +1491,9 @@ int ha_archive::info(uint flag)
if (flag & HA_STATUS_AUTO)
{
init_archive_reader();
+ pthread_mutex_lock(&share->mutex);
azflush(&archive, Z_SYNC_FLUSH);
+ pthread_mutex_unlock(&share->mutex);
stats.auto_increment_value= archive.auto_increment;
}
@@ -1554,7 +1561,9 @@ int ha_archive::check(THD* thd, HA_CHECK_OPT* check_opt)
old_proc_info= thd_proc_info(thd, "Checking table");
/* Flush any waiting data */
+ pthread_mutex_lock(&share->mutex);
azflush(&(share->archive_write), Z_SYNC_FLUSH);
+ pthread_mutex_unlock(&share->mutex);
/*
Now we will rewind the archive file so that we are positioned at the
diff --git a/storage/archive/ha_archive.h b/storage/archive/ha_archive.h
index 22fb57b0cc7..ab630ed22fd 100644
--- a/storage/archive/ha_archive.h
+++ b/storage/archive/ha_archive.h
@@ -88,6 +88,8 @@ public:
{
return (HA_NO_TRANSACTIONS | HA_REC_NOT_IN_SEQ | HA_CAN_BIT_FIELD |
HA_BINLOG_ROW_CAPABLE | HA_BINLOG_STMT_CAPABLE |
+ HA_STATS_RECORDS_IS_EXACT |
+ HA_HAS_RECORDS |
HA_FILE_BASED | HA_CAN_INSERT_DELAYED | HA_CAN_GEOMETRY);
}
ulong index_flags(uint idx, uint part, bool all_parts) const
@@ -101,6 +103,7 @@ public:
uint max_supported_keys() const { return 1; }
uint max_supported_key_length() const { return sizeof(ulonglong); }
uint max_supported_key_part_length() const { return sizeof(ulonglong); }
+ ha_rows records() { return share->rows_recorded; }
int index_init(uint keynr, bool sorted);
virtual int index_read(uchar * buf, const uchar * key,
uint key_len, enum ha_rkey_function find_flag);
diff --git a/storage/csv/ha_tina.cc b/storage/csv/ha_tina.cc
index 34c1fcde58d..00ca2a6c07f 100644
--- a/storage/csv/ha_tina.cc
+++ b/storage/csv/ha_tina.cc
@@ -786,18 +786,6 @@ void ha_tina::update_status()
}
-bool ha_tina::check_if_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table,
- uint count, uint current,
- uint *system_count,
- bool called_by_privileged_thread)
-{
- if (!called_by_privileged_thread)
- return check_if_log_table_locking_is_allowed(sql_command, type, table);
-
- return TRUE;
-}
-
/*
Open a database file. Keep in mind that tables are caches, so
this will not be called for every request. Any sort of positions
diff --git a/storage/csv/ha_tina.h b/storage/csv/ha_tina.h
index 5bb3e9a79a0..5ce09783b9b 100644
--- a/storage/csv/ha_tina.h
+++ b/storage/csv/ha_tina.h
@@ -131,11 +131,6 @@ public:
*/
ha_rows estimate_rows_upper_bound() { return HA_POS_ERROR; }
- virtual bool check_if_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table,
- uint count, uint current,
- uint *system_count,
- bool called_by_logger_thread);
int open(const char *name, int mode, uint open_options);
int close(void);
int write_row(uchar * buf);
diff --git a/storage/federated/ha_federated.h b/storage/federated/ha_federated.h
index 2aa2fac63f1..40bcf9cc402 100644
--- a/storage/federated/ha_federated.h
+++ b/storage/federated/ha_federated.h
@@ -165,6 +165,7 @@ public:
uint max_supported_keys() const { return MAX_KEY; }
uint max_supported_key_parts() const { return MAX_REF_PARTS; }
uint max_supported_key_length() const { return FEDERATED_MAX_KEY_LENGTH; }
+ uint max_supported_key_part_length() const { return FEDERATED_MAX_KEY_LENGTH; }
/*
Called in test_quick_select to determine if indexes should be used.
Normally, we need to know number of blocks . For federated we need to
diff --git a/storage/innobase/Makefile.am b/storage/innobase/Makefile.am
index 0b23ae74f9e..30e056d68fb 100644
--- a/storage/innobase/Makefile.am
+++ b/storage/innobase/Makefile.am
@@ -55,7 +55,9 @@ noinst_HEADERS = include/btr0btr.h include/btr0btr.ic \
include/ha0ha.ic include/hash0hash.h \
include/hash0hash.ic include/ibuf0ibuf.h \
include/ibuf0ibuf.ic include/ibuf0types.h \
+ include/lock0iter.h \
include/lock0lock.h include/lock0lock.ic \
+ include/lock0priv.h include/lock0priv.ic \
include/lock0types.h include/log0log.h \
include/log0log.ic include/log0recv.h \
include/log0recv.ic include/mach0data.h \
@@ -129,7 +131,8 @@ libinnobase_a_SOURCES = btr/btr0btr.c btr/btr0cur.c btr/btr0pcur.c \
eval/eval0eval.c eval/eval0proc.c \
fil/fil0fil.c fsp/fsp0fsp.c fut/fut0fut.c \
fut/fut0lst.c ha/ha0ha.c ha/hash0hash.c \
- ibuf/ibuf0ibuf.c lock/lock0lock.c \
+ ibuf/ibuf0ibuf.c lock/lock0iter.c \
+ lock/lock0lock.c \
log/log0log.c log/log0recv.c mach/mach0data.c \
mem/mem0mem.c mem/mem0pool.c mtr/mtr0log.c \
mtr/mtr0mtr.c os/os0file.c os/os0proc.c \
diff --git a/storage/innobase/buf/buf0buf.c b/storage/innobase/buf/buf0buf.c
index c847b8db9e2..469d3ac05d7 100644
--- a/storage/innobase/buf/buf0buf.c
+++ b/storage/innobase/buf/buf0buf.c
@@ -903,8 +903,7 @@ buf_block_make_young(
/* Note that we read freed_page_clock's without holding any mutex:
this is allowed since the result is used only in heuristics */
- if (buf_pool->freed_page_clock >= block->freed_page_clock
- + 1 + (buf_pool->curr_size / 4)) {
+ if (buf_block_peek_if_too_old(block)) {
mutex_enter(&buf_pool->mutex);
/* There has been freeing activity in the LRU list:
@@ -1648,6 +1647,15 @@ buf_page_init(
block->lock_hash_val = lock_rec_hash(space, offset);
+#ifdef UNIV_DEBUG_VALGRIND
+ if (!space) {
+ /* Silence valid Valgrind warnings about uninitialized
+ data being written to data files. There are some unused
+ bytes on some pages that InnoDB does not initialize. */
+ UNIV_MEM_VALID(block->frame, UNIV_PAGE_SIZE);
+ }
+#endif /* UNIV_DEBUG_VALGRIND */
+
/* Insert into the hash table of file pages */
if (buf_page_hash_get(space, offset)) {
diff --git a/storage/innobase/buf/buf0lru.c b/storage/innobase/buf/buf0lru.c
index 1e27144bdbf..7b49a7641af 100644
--- a/storage/innobase/buf/buf0lru.c
+++ b/storage/innobase/buf/buf0lru.c
@@ -244,7 +244,15 @@ buf_LRU_search_and_free_block(
frame at all */
if (block->frame) {
+ /* The page was declared uninitialized
+ by buf_LRU_block_remove_hashed_page().
+ We need to flag the contents of the
+ page valid (which it still is) in
+ order to avoid bogus Valgrind
+ warnings. */
+ UNIV_MEM_VALID(block->frame, UNIV_PAGE_SIZE);
btr_search_drop_page_hash_index(block->frame);
+ UNIV_MEM_INVALID(block->frame, UNIV_PAGE_SIZE);
}
ut_a(block->buf_fix_count == 0);
@@ -449,6 +457,7 @@ loop:
mutex_enter(&block->mutex);
block->state = BUF_BLOCK_READY_FOR_USE;
+ UNIV_MEM_ALLOC(block->frame, UNIV_PAGE_SIZE);
mutex_exit(&block->mutex);
@@ -864,6 +873,7 @@ buf_LRU_block_free_non_file_page(
block->state = BUF_BLOCK_NOT_USED;
+ UNIV_MEM_ALLOC(block->frame, UNIV_PAGE_SIZE);
#ifdef UNIV_DEBUG
/* Wipe contents of page to reveal possible stale pointers to it */
memset(block->frame, '\0', UNIV_PAGE_SIZE);
@@ -871,6 +881,8 @@ buf_LRU_block_free_non_file_page(
UT_LIST_ADD_FIRST(free, buf_pool->free, block);
block->in_free_list = TRUE;
+ UNIV_MEM_FREE(block->frame, UNIV_PAGE_SIZE);
+
if (srv_use_awe && block->frame) {
/* Add to the list of mapped pages */
@@ -939,6 +951,7 @@ buf_LRU_block_remove_hashed_page(
buf_page_address_fold(block->space, block->offset),
block);
+ UNIV_MEM_INVALID(block->frame, UNIV_PAGE_SIZE);
block->state = BUF_BLOCK_REMOVE_HASH;
}
diff --git a/storage/innobase/fsp/fsp0fsp.c b/storage/innobase/fsp/fsp0fsp.c
index 78fb55e4ef3..e1074933fe8 100644
--- a/storage/innobase/fsp/fsp0fsp.c
+++ b/storage/innobase/fsp/fsp0fsp.c
@@ -2829,7 +2829,7 @@ will be able to insert new data to the database without running out the
tablespace. Only free extents are taken into account and we also subtract
the safety margin required by the above function fsp_reserve_free_extents. */
-ulint
+ullint
fsp_get_available_space_in_free_extents(
/*====================================*/
/* out: available space in kB */
@@ -2895,7 +2895,8 @@ fsp_get_available_space_in_free_extents(
return(0);
}
- return(((n_free - reserve) * FSP_EXTENT_SIZE)
+ return((ullint)(n_free - reserve)
+ * FSP_EXTENT_SIZE
* (UNIV_PAGE_SIZE / 1024));
}
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index 840a0ec7e3b..52cd09c351e 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -947,8 +947,6 @@ check_trx_exists(
/* Update the info whether we should skip XA steps that eat
CPU time */
trx->support_xa = THDVAR(thd, support_xa);
-
- thd_to_trx(thd) = trx;
} else {
if (trx->magic_n != TRX_MAGIC_N) {
mem_analyze_corruption(trx);
@@ -4533,17 +4531,16 @@ ha_innobase::position(
/*********************************************************************
If it's a DB_TOO_BIG_RECORD error then set a suitable message to
return to the client.*/
-static
+inline
void
innodb_check_for_record_too_big_error(
/*==================================*/
- dict_table_t* table, /* in: table to check */
- int error) /* in: error code to check */
+ ulint comp, /* in: ROW_FORMAT: nonzero=COMPACT, 0=REDUNDANT */
+ int error) /* in: error code to check */
{
if (error == (int)DB_TOO_BIG_RECORD) {
- ulint max_row_size;
-
- max_row_size = page_get_free_space_of_empty_noninline(table);
+ ulint max_row_size
+ = page_get_free_space_of_empty_noninline(comp) / 2;
my_error(ER_TOO_BIG_ROWSIZE, MYF(0), max_row_size);
}
@@ -4657,9 +4654,7 @@ create_table_def(
error = row_create_table_for_mysql(table, trx);
- /* We need access to the table and so we do the error checking
- and set the error message here, before the error translation.*/
- innodb_check_for_record_too_big_error(table, error);
+ innodb_check_for_record_too_big_error(flags & DICT_TF_COMPACT, error);
error = convert_error_code_to_mysql(error, NULL);
@@ -4783,9 +4778,8 @@ create_index(
sure we don't create too long indexes. */
error = row_create_index_for_mysql(index, trx, field_lengths);
- /* We need access to the table and so we do the error checking
- and set the error message here, before the error translation.*/
- innodb_check_for_record_too_big_error(index->table, error);
+ innodb_check_for_record_too_big_error(form->s->row_type
+ != ROW_TYPE_REDUNDANT, error);
error = convert_error_code_to_mysql(error, NULL);
@@ -4802,6 +4796,8 @@ int
create_clustered_index_when_no_primary(
/*===================================*/
trx_t* trx, /* in: InnoDB transaction handle */
+ ulint comp, /* in: ROW_FORMAT:
+ nonzero=COMPACT, 0=REDUNDANT */
const char* table_name) /* in: table name */
{
dict_index_t* index;
@@ -4810,13 +4806,11 @@ create_clustered_index_when_no_primary(
/* We pass 0 as the space id, and determine at a lower level the space
id where to store the table */
- index = dict_mem_index_create((char*) table_name,
- (char*) "GEN_CLUST_INDEX", 0, DICT_CLUSTERED, 0);
+ index = dict_mem_index_create(table_name, "GEN_CLUST_INDEX",
+ 0, DICT_CLUSTERED, 0);
error = row_create_index_for_mysql(index, trx, NULL);
- /* We need access to the table and so we do the error checking
- and set the error message here, before the error translation.*/
- innodb_check_for_record_too_big_error(index->table, error);
+ innodb_check_for_record_too_big_error(comp, error);
error = convert_error_code_to_mysql(error, NULL);
@@ -4947,8 +4941,9 @@ ha_innobase::create(
order the rows by their row id which is internally generated
by InnoDB */
- error = create_clustered_index_when_no_primary(trx,
- norm_name);
+ error = create_clustered_index_when_no_primary(
+ trx, form->s->row_type != ROW_TYPE_REDUNDANT,
+ norm_name);
if (error) {
goto cleanup;
}
@@ -5873,9 +5868,9 @@ ha_innobase::update_table_comment(
mutex_enter_noninline(&srv_dict_tmpfile_mutex);
rewind(srv_dict_tmpfile);
- fprintf(srv_dict_tmpfile, "InnoDB free: %lu kB",
- (ulong) fsp_get_available_space_in_free_extents(
- prebuilt->table->space));
+ fprintf(srv_dict_tmpfile, "InnoDB free: %llu kB",
+ fsp_get_available_space_in_free_extents(
+ prebuilt->table->space));
dict_print_info_on_foreign_keys(FALSE, srv_dict_tmpfile,
prebuilt->trx, prebuilt->table);
diff --git a/storage/innobase/include/buf0buf.ic b/storage/innobase/include/buf0buf.ic
index 031bf6c51b4..b077ff0c181 100644
--- a/storage/innobase/include/buf0buf.ic
+++ b/storage/innobase/include/buf0buf.ic
@@ -28,7 +28,7 @@ buf_block_peek_if_too_old(
buf_block_t* block) /* in: block to make younger */
{
return(buf_pool->freed_page_clock >= block->freed_page_clock
- + 1 + (buf_pool->curr_size / 1024));
+ + 1 + (buf_pool->curr_size / 4));
}
/*************************************************************************
diff --git a/storage/innobase/include/fsp0fsp.h b/storage/innobase/include/fsp0fsp.h
index d04269fc157..82e95a2e920 100644
--- a/storage/innobase/include/fsp0fsp.h
+++ b/storage/innobase/include/fsp0fsp.h
@@ -245,7 +245,7 @@ will be able to insert new data to the database without running out the
tablespace. Only free extents are taken into account and we also subtract
the safety margin required by the above function fsp_reserve_free_extents. */
-ulint
+ullint
fsp_get_available_space_in_free_extents(
/*====================================*/
/* out: available space in kB */
diff --git a/storage/innobase/include/lock0iter.h b/storage/innobase/include/lock0iter.h
new file mode 100644
index 00000000000..d063a360c1f
--- /dev/null
+++ b/storage/innobase/include/lock0iter.h
@@ -0,0 +1,52 @@
+/******************************************************
+Lock queue iterator type and function prototypes.
+
+(c) 2007 Innobase Oy
+
+Created July 16, 2007 Vasil Dimov
+*******************************************************/
+
+#ifndef lock0iter_h
+#define lock0iter_h
+
+#include "univ.i"
+#include "lock0types.h"
+
+typedef struct lock_queue_iterator_struct {
+ lock_t* current_lock;
+ /* In case this is a record lock queue (not table lock queue)
+ then bit_no is the record number within the heap in which the
+ record is stored. */
+ ulint bit_no;
+} lock_queue_iterator_t;
+
+/***********************************************************************
+Initialize lock queue iterator so that it starts to iterate from
+"lock". bit_no specifies the record number within the heap where the
+record is stored. It can be undefined (ULINT_UNDEFINED) in two cases:
+1. If the lock is a table lock, thus we have a table lock queue;
+2. If the lock is a record lock and it is a wait lock. In this case
+ bit_no is calculated in this function by using
+ lock_rec_find_set_bit(). There is exactly one bit set in the bitmap
+ of a wait lock. */
+
+void
+lock_queue_iterator_reset(
+/*======================*/
+ lock_queue_iterator_t* iter, /* out: iterator */
+ lock_t* lock, /* in: lock to start from */
+ ulint bit_no);/* in: record number in the
+ heap */
+
+/***********************************************************************
+Gets the previous lock in the lock queue, returns NULL if there are no
+more locks (i.e. the current lock is the first one). The iterator is
+receded (if not-NULL is returned). */
+
+lock_t*
+lock_queue_iterator_get_prev(
+/*=========================*/
+ /* out: previous lock or NULL */
+ lock_queue_iterator_t* iter); /* in/out: iterator */
+
+#endif /* lock0iter_h */
diff --git a/storage/innobase/include/lock0lock.h b/storage/innobase/include/lock0lock.h
index 6b863e32183..059c459c374 100644
--- a/storage/innobase/include/lock0lock.h
+++ b/storage/innobase/include/lock0lock.h
@@ -519,6 +519,18 @@ lock_is_table_exclusive(
dict_table_t* table, /* in: table */
trx_t* trx); /* in: transaction */
/*************************************************************************
+Checks if a lock request lock1 has to wait for request lock2. */
+
+ibool
+lock_has_to_wait(
+/*=============*/
+ /* out: TRUE if lock1 has to wait for lock2 to be
+ removed */
+ lock_t* lock1, /* in: waiting lock */
+ lock_t* lock2); /* in: another lock; NOTE that it is assumed that this
+ has a lock bit set on the same record as in lock1 if
+ the locks are record locks */
+/*************************************************************************
Checks that a transaction id is sensible, i.e., not in the future. */
ibool
@@ -597,7 +609,7 @@ lock_validate(void);
/* out: TRUE if ok */
/*************************************************************************
Return approximate number or record locks (bits set in the bitmap) for
-this transaction. Since delete-marked records ma ybe removed, the
+this transaction. Since delete-marked records maybe removed, the
record count will not be precise. */
ulint
diff --git a/storage/innobase/include/lock0priv.h b/storage/innobase/include/lock0priv.h
new file mode 100644
index 00000000000..7703a2b7def
--- /dev/null
+++ b/storage/innobase/include/lock0priv.h
@@ -0,0 +1,101 @@
+/******************************************************
+Lock module internal structures and methods.
+
+(c) 2007 Innobase Oy
+
+Created July 12, 2007 Vasil Dimov
+*******************************************************/
+
+#ifndef lock0priv_h
+#define lock0priv_h
+
+#ifndef LOCK_MODULE_IMPLEMENTATION
+/* If you need to access members of the structures defined in this
+file, please write appropriate functions that retrieve them and put
+those functions in lock/ */
+#error Do not include lock0priv.h outside of the lock/ module
+#endif
+
+#include "univ.i"
+#include "dict0types.h"
+#include "hash0hash.h"
+#include "trx0types.h"
+#include "ut0lst.h"
+
+/* A table lock */
+typedef struct lock_table_struct lock_table_t;
+struct lock_table_struct {
+ dict_table_t* table; /* database table in dictionary
+ cache */
+ UT_LIST_NODE_T(lock_t)
+ locks; /* list of locks on the same
+ table */
+};
+
+/* Record lock for a page */
+typedef struct lock_rec_struct lock_rec_t;
+struct lock_rec_struct {
+ ulint space; /* space id */
+ ulint page_no; /* page number */
+ ulint n_bits; /* number of bits in the lock
+ bitmap; NOTE: the lock bitmap is
+ placed immediately after the
+ lock struct */
+};
+
+/* Lock struct */
+struct lock_struct {
+ trx_t* trx; /* transaction owning the
+ lock */
+ UT_LIST_NODE_T(lock_t)
+ trx_locks; /* list of the locks of the
+ transaction */
+ ulint type_mode; /* lock type, mode, LOCK_GAP or
+ LOCK_REC_NOT_GAP,
+ LOCK_INSERT_INTENTION,
+ wait flag, ORed */
+ hash_node_t hash; /* hash chain node for a record
+ lock */
+ dict_index_t* index; /* index for a record lock */
+ union {
+ lock_table_t tab_lock;/* table lock */
+ lock_rec_t rec_lock;/* record lock */
+ } un_member;
+};
+
+/*************************************************************************
+Gets the type of a lock. */
+UNIV_INLINE
+ulint
+lock_get_type(
+/*==========*/
+ /* out: LOCK_TABLE or LOCK_REC */
+ const lock_t* lock); /* in: lock */
+
+/**************************************************************************
+Looks for a set bit in a record lock bitmap. Returns ULINT_UNDEFINED,
+if none found. */
+
+ulint
+lock_rec_find_set_bit(
+/*==================*/
+ /* out: bit index == heap number of the record, or
+ ULINT_UNDEFINED if none found */
+ lock_t* lock); /* in: record lock with at least one bit set */
+
+/*************************************************************************
+Gets the previous record lock set on a record. */
+
+lock_t*
+lock_rec_get_prev(
+/*==============*/
+ /* out: previous lock on the same record, NULL if
+ none exists */
+ lock_t* in_lock,/* in: record lock */
+ ulint heap_no);/* in: heap number of the record */
+
+#ifndef UNIV_NONINL
+#include "lock0priv.ic"
+#endif
+
+#endif /* lock0priv_h */
diff --git a/storage/innobase/include/lock0priv.ic b/storage/innobase/include/lock0priv.ic
new file mode 100644
index 00000000000..4bc8397509d
--- /dev/null
+++ b/storage/innobase/include/lock0priv.ic
@@ -0,0 +1,32 @@
+/******************************************************
+Lock module internal inline methods.
+
+(c) 2007 Innobase Oy
+
+Created July 16, 2007 Vasil Dimov
+*******************************************************/
+
+/* This file contains only methods which are used in
+lock/lock0* files, other than lock/lock0lock.c.
+I.e. lock/lock0lock.c contains more internal inline
+methods but they are used only in that file. */
+
+#ifndef LOCK_MODULE_IMPLEMENTATION
+#error Do not include lock0priv.ic outside of the lock/ module
+#endif
+
+/*************************************************************************
+Gets the type of a lock. */
+UNIV_INLINE
+ulint
+lock_get_type(
+/*==========*/
+ /* out: LOCK_TABLE or LOCK_REC */
+ const lock_t* lock) /* in: lock */
+{
+ ut_ad(lock);
+
+ return(lock->type_mode & LOCK_TYPE_MASK);
+}
+
+/* vim: set filetype=c: */
diff --git a/storage/innobase/include/mem0mem.ic b/storage/innobase/include/mem0mem.ic
index cb8fbe92cf0..e59443da73d 100644
--- a/storage/innobase/include/mem0mem.ic
+++ b/storage/innobase/include/mem0mem.ic
@@ -167,6 +167,8 @@ mem_heap_alloc(
mem_block_set_free(block, free + MEM_SPACE_NEEDED(n));
#ifdef UNIV_MEM_DEBUG
+ UNIV_MEM_ALLOC(buf,
+ n + MEM_FIELD_HEADER_SIZE + MEM_FIELD_TRAILER_SIZE);
/* In the debug version write debugging info to the field */
mem_field_init((byte*)buf, n);
@@ -177,8 +179,10 @@ mem_heap_alloc(
#endif
#ifdef UNIV_SET_MEM_TO_ZERO
+ UNIV_MEM_ALLOC(buf, n);
memset(buf, '\0', n);
#endif
+ UNIV_MEM_ALLOC(buf, n);
return(buf);
}
@@ -369,6 +373,8 @@ mem_heap_free_top(
if ((heap != block) && (mem_block_get_free(block)
== mem_block_get_start(block))) {
mem_heap_block_free(heap, block);
+ } else {
+ UNIV_MEM_FREE((byte*) block + mem_block_get_free(block), n);
}
}
diff --git a/storage/innobase/include/page0page.h b/storage/innobase/include/page0page.h
index 833d268c9de..273007c2778 100644
--- a/storage/innobase/include/page0page.h
+++ b/storage/innobase/include/page0page.h
@@ -531,6 +531,15 @@ page_get_free_space_of_empty(
/* out: free space */
ulint comp) /* in: nonzero=compact page format */
__attribute__((const));
+/*****************************************************************
+Calculates free space if a page is emptied. */
+
+ulint
+page_get_free_space_of_empty_noninline(
+/*===================================*/
+ /* out: free space */
+ ulint comp) /* in: nonzero=compact page format */
+ __attribute__((const));
/****************************************************************
Returns the sum of the sizes of the records in the record list
excluding the infimum and supremum records. */
diff --git a/storage/innobase/include/row0mysql.h b/storage/innobase/include/row0mysql.h
index bda3494073f..1448efe94fe 100644
--- a/storage/innobase/include/row0mysql.h
+++ b/storage/innobase/include/row0mysql.h
@@ -460,19 +460,6 @@ row_check_table_for_mysql(
/* out: DB_ERROR or DB_SUCCESS */
row_prebuilt_t* prebuilt); /* in: prebuilt struct in MySQL
handle */
-/*************************************************************************
-Get the min of the maximum possible row sizes. */
-
-ulint
-page_get_free_space_of_empty_noninline(
-/*===================================*/
- /* out: The (approx) maximum size
- of a row, this is a conservative
- estimate, since the size can be
- slightly larger depending upon
- the ROW_FORMAT setting.*/
- dict_table_t* table); /* in: table for which max record
- size required.*/
/* A struct describing a place for an individual column in the MySQL
row format which is presented to the table handler in ha_innobase.
diff --git a/storage/innobase/include/trx0trx.h b/storage/innobase/include/trx0trx.h
index eeda2a7a52c..2459e76c4c1 100644
--- a/storage/innobase/include/trx0trx.h
+++ b/storage/innobase/include/trx0trx.h
@@ -512,14 +512,6 @@ struct trx_struct{
ulint mysql_process_no;/* since in Linux, 'top' reports
process id's and not thread id's, we
store the process number too */
- ibool allow_duplicates;/* normally FALSE, but if the user
- wants to update duplicate rows,
- (in table inserts, for example) we
- set this TRUE */
- ibool replace_duplicates;/* normally FALSE, but if the user
- wants to replace duplicate rows,
- (in table inserts, for example) we
- set this TRUE */
/*------------------------------*/
ulint n_mysql_tables_in_use; /* number of Innobase tables
used in the processing of the current
diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i
index 957baa0391f..ba8e6e56219 100644
--- a/storage/innobase/include/univ.i
+++ b/storage/innobase/include/univ.i
@@ -83,6 +83,8 @@ memory is read outside the allocated blocks. */
/* Make a non-inline debug version */
#if 0
+#define UNIV_DEBUG_VALGRIND /* Enable extra
+ Valgrind instrumentation */
#define UNIV_DEBUG /* Enable ut_ad() assertions */
#define UNIV_LIST_DEBUG /* debug UT_LIST_ macros */
#define UNIV_MEM_DEBUG /* detect memory leaks etc */
@@ -214,6 +216,8 @@ typedef __int64 ib_longlong;
typedef longlong ib_longlong;
#endif
+typedef unsigned long long int ullint;
+
#ifndef __WIN__
#if SIZEOF_LONG != SIZEOF_VOIDP
#error "Error: InnoDB's ulint must be of the same size as void*"
@@ -298,5 +302,17 @@ typedef void* os_thread_ret_t;
#include "ut0dbg.h"
#include "ut0ut.h"
#include "db0err.h"
+#ifdef UNIV_DEBUG_VALGRIND
+# include <valgrind/memcheck.h>
+# define UNIV_MEM_VALID(addr, size) VALGRIND_MAKE_MEM_DEFINED(addr, size)
+# define UNIV_MEM_INVALID(addr, size) VALGRIND_MAKE_MEM_UNDEFINED(addr, size)
+# define UNIV_MEM_FREE(addr, size) VALGRIND_MAKE_MEM_NOACCESS(addr, size)
+# define UNIV_MEM_ALLOC(addr, size) VALGRIND_MAKE_MEM_UNDEFINED(addr, size)
+#else
+# define UNIV_MEM_VALID(addr, size) do {} while(0)
+# define UNIV_MEM_INVALID(addr, size) do {} while(0)
+# define UNIV_MEM_FREE(addr, size) do {} while(0)
+# define UNIV_MEM_ALLOC(addr, size) do {} while(0)
+#endif
#endif
diff --git a/storage/innobase/lock/lock0iter.c b/storage/innobase/lock/lock0iter.c
new file mode 100644
index 00000000000..0afa7019c86
--- /dev/null
+++ b/storage/innobase/lock/lock0iter.c
@@ -0,0 +1,90 @@
+/******************************************************
+Lock queue iterator. Can iterate over table and record
+lock queues.
+
+(c) 2007 Innobase Oy
+
+Created July 16, 2007 Vasil Dimov
+*******************************************************/
+
+#define LOCK_MODULE_IMPLEMENTATION
+
+#include "univ.i"
+#include "lock0iter.h"
+#include "lock0lock.h"
+#include "lock0priv.h"
+#include "ut0dbg.h"
+#include "ut0lst.h"
+
+/***********************************************************************
+Initialize lock queue iterator so that it starts to iterate from
+"lock". bit_no specifies the record number within the heap where the
+record is stored. It can be undefined (ULINT_UNDEFINED) in two cases:
+1. If the lock is a table lock, thus we have a table lock queue;
+2. If the lock is a record lock and it is a wait lock. In this case
+ bit_no is calculated in this function by using
+ lock_rec_find_set_bit(). There is exactly one bit set in the bitmap
+ of a wait lock. */
+
+void
+lock_queue_iterator_reset(
+/*======================*/
+ lock_queue_iterator_t* iter, /* out: iterator */
+ lock_t* lock, /* in: lock to start from */
+ ulint bit_no) /* in: record number in the
+ heap */
+{
+ iter->current_lock = lock;
+
+ if (bit_no != ULINT_UNDEFINED) {
+
+ iter->bit_no = bit_no;
+ } else {
+
+ switch (lock_get_type(lock)) {
+ case LOCK_TABLE:
+ iter->bit_no = ULINT_UNDEFINED;
+ break;
+ case LOCK_REC:
+ iter->bit_no = lock_rec_find_set_bit(lock);
+ ut_a(iter->bit_no != ULINT_UNDEFINED);
+ break;
+ default:
+ ut_error;
+ }
+ }
+}
+
+/***********************************************************************
+Gets the previous lock in the lock queue, returns NULL if there are no
+more locks (i.e. the current lock is the first one). The iterator is
+receded (if not-NULL is returned). */
+
+lock_t*
+lock_queue_iterator_get_prev(
+/*=========================*/
+ /* out: previous lock or NULL */
+ lock_queue_iterator_t* iter) /* in/out: iterator */
+{
+ lock_t* prev_lock;
+
+ switch (lock_get_type(iter->current_lock)) {
+ case LOCK_REC:
+ prev_lock = lock_rec_get_prev(
+ iter->current_lock, iter->bit_no);
+ break;
+ case LOCK_TABLE:
+ prev_lock = UT_LIST_GET_PREV(
+ un_member.tab_lock.locks, iter->current_lock);
+ break;
+ default:
+ ut_error;
+ }
+
+ if (prev_lock != NULL) {
+
+ iter->current_lock = prev_lock;
+ }
+
+ return(prev_lock);
+}
diff --git a/storage/innobase/lock/lock0lock.c b/storage/innobase/lock/lock0lock.c
index 6f5390145b5..f43752fb5fc 100644
--- a/storage/innobase/lock/lock0lock.c
+++ b/storage/innobase/lock/lock0lock.c
@@ -6,10 +6,14 @@ The transaction lock system
Created 5/7/1996 Heikki Tuuri
*******************************************************/
+#define LOCK_MODULE_IMPLEMENTATION
+
#include "lock0lock.h"
+#include "lock0priv.h"
#ifdef UNIV_NONINL
#include "lock0lock.ic"
+#include "lock0priv.ic"
#endif
#include "usr0sess.h"
@@ -319,42 +323,6 @@ ibool lock_print_waits = FALSE;
/* The lock system */
lock_sys_t* lock_sys = NULL;
-/* A table lock */
-typedef struct lock_table_struct lock_table_t;
-struct lock_table_struct{
- dict_table_t* table; /* database table in dictionary cache */
- UT_LIST_NODE_T(lock_t)
- locks; /* list of locks on the same table */
-};
-
-/* Record lock for a page */
-typedef struct lock_rec_struct lock_rec_t;
-struct lock_rec_struct{
- ulint space; /* space id */
- ulint page_no; /* page number */
- ulint n_bits; /* number of bits in the lock bitmap */
- /* NOTE: the lock bitmap is placed immediately
- after the lock struct */
-};
-
-/* Lock struct */
-struct lock_struct{
- trx_t* trx; /* transaction owning the lock */
- UT_LIST_NODE_T(lock_t)
- trx_locks; /* list of the locks of the
- transaction */
- ulint type_mode; /* lock type, mode, LOCK_GAP or
- LOCK_REC_NOT_GAP,
- LOCK_INSERT_INTENTION,
- wait flag, ORed */
- hash_node_t hash; /* hash chain node for a record lock */
- dict_index_t* index; /* index for a record lock */
- union {
- lock_table_t tab_lock;/* table lock */
- lock_rec_t rec_lock;/* record lock */
- } un_member;
-};
-
/* We store info on the latest deadlock error to this buffer. InnoDB
Monitor will then fetch it and print */
ibool lock_deadlock_found = FALSE;
@@ -401,20 +369,6 @@ lock_deadlock_recursive(
return LOCK_VICTIM_IS_START */
/*************************************************************************
-Gets the type of a lock. */
-UNIV_INLINE
-ulint
-lock_get_type(
-/*==========*/
- /* out: LOCK_TABLE or LOCK_REC */
- lock_t* lock) /* in: lock */
-{
- ut_ad(lock);
-
- return(lock->type_mode & LOCK_TYPE_MASK);
-}
-
-/*************************************************************************
Gets the nth bit of a record lock. */
UNIV_INLINE
ibool
@@ -611,8 +565,8 @@ UNIV_INLINE
ulint
lock_get_mode(
/*==========*/
- /* out: mode */
- lock_t* lock) /* in: lock */
+ /* out: mode */
+ const lock_t* lock) /* in: lock */
{
ut_ad(lock);
@@ -1017,7 +971,7 @@ lock_rec_has_to_wait(
/*************************************************************************
Checks if a lock request lock1 has to wait for request lock2. */
-static
+
ibool
lock_has_to_wait(
/*=============*/
@@ -1098,7 +1052,7 @@ lock_rec_set_nth_bit(
/**************************************************************************
Looks for a set bit in a record lock bitmap. Returns ULINT_UNDEFINED,
if none found. */
-static
+
ulint
lock_rec_find_set_bit(
/*==================*/
@@ -1390,7 +1344,7 @@ lock_rec_copy(
/*************************************************************************
Gets the previous record lock set on a record. */
-static
+
lock_t*
lock_rec_get_prev(
/*==============*/
diff --git a/storage/innobase/log/log0recv.c b/storage/innobase/log/log0recv.c
index ab5f42e3a13..ce2fc3ed535 100644
--- a/storage/innobase/log/log0recv.c
+++ b/storage/innobase/log/log0recv.c
@@ -57,6 +57,16 @@ ibool recv_needed_recovery = FALSE;
ibool recv_lsn_checks_on = FALSE;
+/* There are two conditions under which we scan the logs, the first
+is normal startup and the second is when we do a recovery from an
+archive.
+This flag is set if we are doing a scan from the last checkpoint during
+startup. If we find log entries that were written after the last checkpoint
+we know that the server was not cleanly shutdown. We must then initialize
+the crash recovery environment before attempting to store these entries in
+the log hash table. */
+ibool recv_log_scan_is_startup_type = FALSE;
+
/* If the following is TRUE, the buffer pool file pages must be invalidated
after recovery and no ibuf operations are allowed; this becomes TRUE if
the log record hash table becomes too full, and log records must be merged
@@ -99,6 +109,16 @@ the recovery failed and the database may be corrupt. */
dulint recv_max_page_lsn;
+/* prototypes */
+
+/***********************************************************
+Initialize crash recovery environment. Can be called iff
+recv_needed_recovery == FALSE. */
+static
+void
+recv_init_crash_recovery(void);
+/*===========================*/
+
/************************************************************
Creates the recovery system. */
@@ -2284,6 +2304,23 @@ recv_scan_log_recs(
if (ut_dulint_cmp(scanned_lsn, recv_sys->scanned_lsn) > 0) {
+ /* We have found more entries. If this scan is
+ of startup type, we must initiate crash recovery
+ environment before parsing these log records. */
+
+ if (recv_log_scan_is_startup_type
+ && !recv_needed_recovery) {
+
+ fprintf(stderr,
+ "InnoDB: Log scan progressed"
+ " past the checkpoint lsn %lu %lu\n",
+ (ulong) ut_dulint_get_high(
+ recv_sys->scanned_lsn),
+ (ulong) ut_dulint_get_low(
+ recv_sys->scanned_lsn));
+ recv_init_crash_recovery();
+ }
+
/* We were able to find more log data: add it to the
parsing buffer if parse_start_lsn is already
non-zero */
@@ -2405,6 +2442,48 @@ recv_group_scan_log_recs(
#endif /* UNIV_DEBUG */
}
+/***********************************************************
+Initialize crash recovery environment. Can be called iff
+recv_needed_recovery == FALSE. */
+static
+void
+recv_init_crash_recovery(void)
+/*==========================*/
+{
+ ut_a(!recv_needed_recovery);
+
+ recv_needed_recovery = TRUE;
+
+ ut_print_timestamp(stderr);
+
+ fprintf(stderr,
+ " InnoDB: Database was not"
+ " shut down normally!\n"
+ "InnoDB: Starting crash recovery.\n");
+
+ fprintf(stderr,
+ "InnoDB: Reading tablespace information"
+ " from the .ibd files...\n");
+
+ fil_load_single_table_tablespaces();
+
+ /* If we are using the doublewrite method, we will
+ check if there are half-written pages in data files,
+ and restore them from the doublewrite buffer if
+ possible */
+
+ if (srv_force_recovery < SRV_FORCE_NO_LOG_REDO) {
+
+ fprintf(stderr,
+ "InnoDB: Restoring possible"
+ " half-written data pages from"
+ " the doublewrite\n"
+ "InnoDB: buffer...\n");
+ trx_sys_doublewrite_init_or_restore_pages(TRUE);
+ }
+
+}
+
/************************************************************
Recovers from a checkpoint. When this function returns, the database is able
to start processing of new user transactions, but the function
@@ -2532,92 +2611,6 @@ recv_recovery_from_checkpoint_start(
recv_sys->recovered_lsn = checkpoint_lsn;
srv_start_lsn = checkpoint_lsn;
-
- /* NOTE: we always do a 'recovery' at startup, but only if
- there is something wrong we will print a message to the
- user about recovery: */
-
- if (ut_dulint_cmp(checkpoint_lsn, max_flushed_lsn) != 0
- || ut_dulint_cmp(checkpoint_lsn, min_flushed_lsn) != 0) {
-
- if (ut_dulint_cmp(checkpoint_lsn, max_flushed_lsn)
- < 0) {
- fprintf(stderr,
- "InnoDB: #########################"
- "#################################\n"
- "InnoDB: "
- "WARNING!\n"
- "InnoDB: The log sequence number"
- " in ibdata files is higher\n"
- "InnoDB: than the log sequence number"
- " in the ib_logfiles! Are you sure\n"
- "InnoDB: you are using the right"
- " ib_logfiles to start up"
- " the database?\n"
- "InnoDB: Log sequence number in"
- " ib_logfiles is %lu %lu, log\n"
- "InnoDB: sequence numbers stamped"
- " to ibdata file headers are between\n"
- "InnoDB: %lu %lu and %lu %lu.\n"
- "InnoDB: #########################"
- "#################################\n",
- (ulong) ut_dulint_get_high(
- checkpoint_lsn),
- (ulong) ut_dulint_get_low(
- checkpoint_lsn),
- (ulong) ut_dulint_get_high(
- min_flushed_lsn),
- (ulong) ut_dulint_get_low(
- min_flushed_lsn),
- (ulong) ut_dulint_get_high(
- max_flushed_lsn),
- (ulong) ut_dulint_get_low(
- max_flushed_lsn));
- }
-
- recv_needed_recovery = TRUE;
-
- ut_print_timestamp(stderr);
-
- fprintf(stderr,
- " InnoDB: Database was not"
- " shut down normally!\n"
- "InnoDB: Starting crash recovery.\n");
-
- fprintf(stderr,
- "InnoDB: Reading tablespace information"
- " from the .ibd files...\n");
-
- fil_load_single_table_tablespaces();
-
- /* If we are using the doublewrite method, we will
- check if there are half-written pages in data files,
- and restore them from the doublewrite buffer if
- possible */
-
- if (srv_force_recovery < SRV_FORCE_NO_LOG_REDO) {
-
- fprintf(stderr,
- "InnoDB: Restoring possible"
- " half-written data pages from"
- " the doublewrite\n"
- "InnoDB: buffer...\n");
- trx_sys_doublewrite_init_or_restore_pages(
- TRUE);
- }
-
- ut_print_timestamp(stderr);
-
- fprintf(stderr,
- " InnoDB: Starting log scan"
- " based on checkpoint at\n"
- "InnoDB: log sequence number %lu %lu.\n",
- (ulong) ut_dulint_get_high(checkpoint_lsn),
- (ulong) ut_dulint_get_low(checkpoint_lsn));
- } else {
- /* Init the doublewrite buffer memory structure */
- trx_sys_doublewrite_init_or_restore_pages(FALSE);
- }
}
contiguous_lsn = ut_dulint_align_down(recv_sys->scanned_lsn,
@@ -2670,6 +2663,8 @@ recv_recovery_from_checkpoint_start(
group = UT_LIST_GET_NEXT(log_groups, group);
}
+ /* Set the flag to publish that we are doing startup scan. */
+ recv_log_scan_is_startup_type = (type == LOG_CHECKPOINT);
while (group) {
old_scanned_lsn = recv_sys->scanned_lsn;
@@ -2691,6 +2686,69 @@ recv_recovery_from_checkpoint_start(
group = UT_LIST_GET_NEXT(log_groups, group);
}
+ /* Done with startup scan. Clear the flag. */
+ recv_log_scan_is_startup_type = FALSE;
+ if (type == LOG_CHECKPOINT) {
+ /* NOTE: we always do a 'recovery' at startup, but only if
+ there is something wrong we will print a message to the
+ user about recovery: */
+
+ if (ut_dulint_cmp(checkpoint_lsn, max_flushed_lsn) != 0
+ || ut_dulint_cmp(checkpoint_lsn, min_flushed_lsn) != 0) {
+
+ if (ut_dulint_cmp(checkpoint_lsn, max_flushed_lsn)
+ < 0) {
+ fprintf(stderr,
+ "InnoDB: #########################"
+ "#################################\n"
+ "InnoDB: "
+ "WARNING!\n"
+ "InnoDB: The log sequence number"
+ " in ibdata files is higher\n"
+ "InnoDB: than the log sequence number"
+ " in the ib_logfiles! Are you sure\n"
+ "InnoDB: you are using the right"
+ " ib_logfiles to start up"
+ " the database?\n"
+ "InnoDB: Log sequence number in"
+ " ib_logfiles is %lu %lu, log\n"
+ "InnoDB: sequence numbers stamped"
+ " to ibdata file headers are between\n"
+ "InnoDB: %lu %lu and %lu %lu.\n"
+ "InnoDB: #########################"
+ "#################################\n",
+ (ulong) ut_dulint_get_high(
+ checkpoint_lsn),
+ (ulong) ut_dulint_get_low(
+ checkpoint_lsn),
+ (ulong) ut_dulint_get_high(
+ min_flushed_lsn),
+ (ulong) ut_dulint_get_low(
+ min_flushed_lsn),
+ (ulong) ut_dulint_get_high(
+ max_flushed_lsn),
+ (ulong) ut_dulint_get_low(
+ max_flushed_lsn));
+
+
+ }
+
+ if (!recv_needed_recovery) {
+ fprintf(stderr,
+ "InnoDB: The log sequence number"
+ " in ibdata files does not match\n"
+ "InnoDB: the log sequence number"
+ " in the ib_logfiles!\n");
+ recv_init_crash_recovery();
+ }
+
+ }
+ if (!recv_needed_recovery) {
+ /* Init the doublewrite buffer memory structure */
+ trx_sys_doublewrite_init_or_restore_pages(FALSE);
+ }
+ }
+
/* We currently have only one log group */
if (ut_dulint_cmp(group_scanned_lsn, checkpoint_lsn) < 0) {
ut_print_timestamp(stderr);
@@ -2747,20 +2805,9 @@ recv_recovery_from_checkpoint_start(
recv_synchronize_groups(up_to_date_group);
if (!recv_needed_recovery) {
- if (ut_dulint_cmp(checkpoint_lsn, recv_sys->recovered_lsn)
- != 0) {
- fprintf(stderr,
- "InnoDB: Warning: we did not need to do"
- " crash recovery, but log scan\n"
- "InnoDB: progressed past the checkpoint"
- " lsn %lu %lu up to lsn %lu %lu\n",
- (ulong) ut_dulint_get_high(checkpoint_lsn),
- (ulong) ut_dulint_get_low(checkpoint_lsn),
- (ulong) ut_dulint_get_high(
- recv_sys->recovered_lsn),
- (ulong) ut_dulint_get_low(
- recv_sys->recovered_lsn));
- }
+ ut_a(ut_dulint_cmp(checkpoint_lsn,
+ recv_sys->recovered_lsn) == 0);
+
} else {
srv_start_lsn = recv_sys->recovered_lsn;
}
diff --git a/storage/innobase/mem/mem0mem.c b/storage/innobase/mem/mem0mem.c
index 10b359e8e67..d89a3a55d88 100644
--- a/storage/innobase/mem/mem0mem.c
+++ b/storage/innobase/mem/mem0mem.c
@@ -514,6 +514,7 @@ mem_heap_block_free(
mem_erase_buf((byte*)block, len);
#endif
+ UNIV_MEM_FREE(block, len);
if (init_block) {
/* Do not have to free: do nothing */
diff --git a/storage/innobase/mem/mem0pool.c b/storage/innobase/mem/mem0pool.c
index c010ae61160..27da86a0309 100644
--- a/storage/innobase/mem/mem0pool.c
+++ b/storage/innobase/mem/mem0pool.c
@@ -229,6 +229,8 @@ mem_pool_create(
mem_area_set_size(area, ut_2_exp(i));
mem_area_set_free(area, TRUE);
+ UNIV_MEM_FREE(MEM_AREA_EXTRA_SIZE + (byte*) area,
+ ut_2_exp(i) - MEM_AREA_EXTRA_SIZE);
UT_LIST_ADD_FIRST(free_list, pool->free_list[i], area);
@@ -300,6 +302,7 @@ mem_pool_fill_free_list(
UT_LIST_REMOVE(free_list, pool->free_list[i + 1], area);
area2 = (mem_area_t*)(((byte*)area) + ut_2_exp(i));
+ UNIV_MEM_ALLOC(area2, MEM_AREA_EXTRA_SIZE);
mem_area_set_size(area2, ut_2_exp(i));
mem_area_set_free(area2, TRUE);
@@ -400,6 +403,8 @@ mem_area_alloc(
mutex_exit(&(pool->mutex));
ut_ad(mem_pool_validate(pool));
+ UNIV_MEM_ALLOC(MEM_AREA_EXTRA_SIZE + (byte*)area,
+ ut_2_exp(n) - MEM_AREA_EXTRA_SIZE);
return((void*)(MEM_AREA_EXTRA_SIZE + ((byte*)area)));
}
@@ -482,6 +487,7 @@ mem_area_free(
}
size = mem_area_get_size(area);
+ UNIV_MEM_FREE(ptr, size - MEM_AREA_EXTRA_SIZE);
if (size == 0) {
fprintf(stderr,
diff --git a/storage/innobase/os/os0file.c b/storage/innobase/os/os0file.c
index f496e1127ce..78140cc5ecf 100644
--- a/storage/innobase/os/os0file.c
+++ b/storage/innobase/os/os0file.c
@@ -456,10 +456,9 @@ os_file_handle_error_no_exit(
#undef USE_FILE_LOCK
#define USE_FILE_LOCK
-#if defined(UNIV_HOTBACKUP) || defined(__WIN__) || defined(__FreeBSD__) || defined(__NETWARE__)
+#if defined(UNIV_HOTBACKUP) || defined(__WIN__) || defined(__NETWARE__)
/* InnoDB Hot Backup does not lock the data files.
* On Windows, mandatory locking is used.
- * On FreeBSD with LinuxThreads, advisory locking does not work properly.
*/
# undef USE_FILE_LOCK
#endif
diff --git a/storage/innobase/page/page0page.c b/storage/innobase/page/page0page.c
index 4212df7a631..543cf9e34eb 100644
--- a/storage/innobase/page/page0page.c
+++ b/storage/innobase/page/page0page.c
@@ -209,6 +209,18 @@ page_set_max_trx_id(
}
}
+/*****************************************************************
+Calculates free space if a page is emptied. */
+
+ulint
+page_get_free_space_of_empty_noninline(
+/*===================================*/
+ /* out: free space */
+ ulint comp) /* in: nonzero=compact page format */
+{
+ return(page_get_free_space_of_empty(comp));
+}
+
/****************************************************************
Allocates a block of memory from an index page. */
diff --git a/storage/innobase/plug.in b/storage/innobase/plug.in
index 6e26a7d3376..b252d471fba 100644
--- a/storage/innobase/plug.in
+++ b/storage/innobase/plug.in
@@ -6,10 +6,6 @@ MYSQL_PLUGIN_DYNAMIC(innobase, [ha_innodb.la])
MYSQL_PLUGIN_ACTIONS(innobase, [
AC_CHECK_LIB(rt, aio_read, [innodb_system_libs="-lrt"])
AC_SUBST(innodb_system_libs)
- AC_PROG_CC
- AC_PROG_RANLIB
- AC_PROG_INSTALL
- AC_PROG_LIBTOOL
AC_CHECK_HEADERS(aio.h sched.h)
AC_CHECK_SIZEOF(int, 4)
AC_CHECK_SIZEOF(long, 4)
diff --git a/storage/innobase/rem/rem0rec.c b/storage/innobase/rem/rem0rec.c
index 3bc73eca9ea..64f8e2d319c 100644
--- a/storage/innobase/rem/rem0rec.c
+++ b/storage/innobase/rem/rem0rec.c
@@ -753,7 +753,11 @@ rec_convert_dtuple_to_rec_old(
/* Calculate the offset of the origin in the physical record */
rec = buf + rec_get_converted_extra_size(data_size, n_fields);
-
+#ifdef UNIV_DEBUG
+ /* Suppress Valgrind warnings of ut_ad()
+ in mach_write_to_1(), mach_write_to_2() et al. */
+ memset(buf, 0xff, rec - buf + data_size);
+#endif /* UNIV_DEBUG */
/* Store the number of fields */
rec_set_n_fields_old(rec, n_fields);
diff --git a/storage/innobase/row/row0mysql.c b/storage/innobase/row/row0mysql.c
index 9f88fd8040b..d51b7e1e0b5 100644
--- a/storage/innobase/row/row0mysql.c
+++ b/storage/innobase/row/row0mysql.c
@@ -4059,25 +4059,3 @@ row_check_table_for_mysql(
return(ret);
}
-
-/*************************************************************************
-Get the maximum row size. */
-
-ulint
-page_get_free_space_of_empty_noninline(
-/*===================================*/
- /* out: The (approx) maximum size
- of a row, this is a conservative
- estimate, since the size can be
- slightly larger depending upon
- the ROW_FORMAT setting.*/
- dict_table_t* table) /* in: table for which max record
- size is required.*/
-{
- ibool compact;
-
- compact = dict_table_is_comp(table);
-
- return(page_get_free_space_of_empty(compact) / 2);
-}
-
diff --git a/storage/innobase/sync/sync0rw.c b/storage/innobase/sync/sync0rw.c
index 34b45e2c1c3..4db780c8b3f 100644
--- a/storage/innobase/sync/sync0rw.c
+++ b/storage/innobase/sync/sync0rw.c
@@ -15,16 +15,34 @@ Created 9/11/1995 Heikki Tuuri
#include "mem0mem.h"
#include "srv0srv.h"
+/* number of system calls made during shared latching */
ulint rw_s_system_call_count = 0;
+
+/* number of spin waits on rw-latches,
+resulted during shared (read) locks */
ulint rw_s_spin_wait_count = 0;
+
+/* number of OS waits on rw-latches,
+resulted during shared (read) locks */
ulint rw_s_os_wait_count = 0;
+/* number of unlocks (that unlock shared locks),
+set only when UNIV_SYNC_PERF_STAT is defined */
ulint rw_s_exit_count = 0;
+/* number of system calls made during exclusive latching */
ulint rw_x_system_call_count = 0;
+
+/* number of spin waits on rw-latches,
+resulted during exclusive (write) locks */
ulint rw_x_spin_wait_count = 0;
+
+/* number of OS waits on rw-latches,
+resulted during exclusive (write) locks */
ulint rw_x_os_wait_count = 0;
+/* number of unlocks (that unlock exclusive locks),
+set only when UNIV_SYNC_PERF_STAT is defined */
ulint rw_x_exit_count = 0;
/* The global list of rw-locks */
diff --git a/storage/innobase/sync/sync0sync.c b/storage/innobase/sync/sync0sync.c
index 672e1f93aad..bf3f4d1ff20 100644
--- a/storage/innobase/sync/sync0sync.c
+++ b/storage/innobase/sync/sync0sync.c
@@ -115,6 +115,7 @@ ulint mutex_system_call_count = 0;
/* Number of spin waits on mutexes: for performance monitoring */
+/* round=one iteration of a spin loop */
ulint mutex_spin_round_count = 0;
ulint mutex_spin_wait_count = 0;
ulint mutex_os_wait_count = 0;
diff --git a/storage/innobase/trx/trx0sys.c b/storage/innobase/trx/trx0sys.c
index 307a03bfbc3..144721150b6 100644
--- a/storage/innobase/trx/trx0sys.c
+++ b/storage/innobase/trx/trx0sys.c
@@ -868,7 +868,16 @@ trx_sysf_create(
trx_sysf_rseg_set_page_no(sys_header, i, FIL_NULL, mtr);
}
- /* The remaining area (up to the page trailer) is uninitialized. */
+ /* The remaining area (up to the page trailer) is uninitialized.
+ Silence Valgrind warnings about it. */
+ UNIV_MEM_VALID(sys_header + (TRX_SYS_RSEGS
+ + TRX_SYS_N_RSEGS * TRX_SYS_RSEG_SLOT_SIZE
+ + TRX_SYS_RSEG_SPACE),
+ (UNIV_PAGE_SIZE - FIL_PAGE_DATA_END
+ - (TRX_SYS_RSEGS
+ + TRX_SYS_N_RSEGS * TRX_SYS_RSEG_SLOT_SIZE
+ + TRX_SYS_RSEG_SPACE))
+ + page - sys_header);
/* Create the first rollback segment in the SYSTEM tablespace */
page_no = trx_rseg_header_create(TRX_SYS_SPACE, ULINT_MAX, &slot_no,
diff --git a/storage/innobase/trx/trx0trx.c b/storage/innobase/trx/trx0trx.c
index 2d5ce0e1c61..b312e008cd2 100644
--- a/storage/innobase/trx/trx0trx.c
+++ b/storage/innobase/trx/trx0trx.c
@@ -1570,19 +1570,21 @@ trx_commit_for_mysql(
the transaction object does not have an InnoDB session object, and we
set the dummy session that we use for all MySQL transactions. */
- mutex_enter(&kernel_mutex);
-
if (trx->sess == NULL) {
/* Open a dummy session */
if (!trx_dummy_sess) {
- trx_dummy_sess = sess_open();
+ mutex_enter(&kernel_mutex);
+
+ if (!trx_dummy_sess) {
+ trx_dummy_sess = sess_open();
+ }
+
+ mutex_exit(&kernel_mutex);
}
trx->sess = trx_dummy_sess;
}
-
- mutex_exit(&kernel_mutex);
trx_start_if_not_started(trx);
diff --git a/storage/innobase/ut/ut0mem.c b/storage/innobase/ut/ut0mem.c
index 4fd515c35e6..b466a5f6872 100644
--- a/storage/innobase/ut/ut0mem.c
+++ b/storage/innobase/ut/ut0mem.c
@@ -162,6 +162,8 @@ retry:
#endif
}
+ UNIV_MEM_ALLOC(ret, n + sizeof(ut_mem_block_t));
+
((ut_mem_block_t*)ret)->size = n + sizeof(ut_mem_block_t);
((ut_mem_block_t*)ret)->magic_n = UT_MEM_MAGIC_N;
diff --git a/storage/myisam/ha_myisam.cc b/storage/myisam/ha_myisam.cc
index c86459ae0a7..77334b2cfba 100644
--- a/storage/myisam/ha_myisam.cc
+++ b/storage/myisam/ha_myisam.cc
@@ -607,41 +607,7 @@ err:
#endif /* HAVE_REPLICATION */
-bool ha_myisam::check_if_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table,
- uint count, uint current,
- uint *system_count,
- bool called_by_privileged_thread)
-{
- /*
- To be able to open and lock for reading system tables like 'mysql.proc',
- when we already have some tables opened and locked, and avoid deadlocks
- we have to disallow write-locking of these tables with any other tables.
- */
- if (table->s->system_table &&
- table->reginfo.lock_type >= TL_WRITE_ALLOW_WRITE)
- (*system_count)++;
-
- /* 'current' is an index, that's why '<=' below. */
- if (*system_count > 0 && *system_count <= current)
- {
- my_error(ER_WRONG_LOCK_OF_SYSTEM_TABLE, MYF(0));
- return FALSE;
- }
-
- /*
- Deny locking of the log tables, which is incompatible with
- concurrent insert. Unless called from a logger THD (general_log_thd
- or slow_log_thd) or by a privileged thread.
- */
- if (!called_by_privileged_thread)
- return check_if_log_table_locking_is_allowed(sql_command, type, table);
-
- return TRUE;
-}
-
- /* Name is here without an extension */
-
+/* Name is here without an extension */
int ha_myisam::open(const char *name, int mode, uint test_if_locked)
{
MI_KEYDEF *keyinfo;
diff --git a/storage/myisam/ha_myisam.h b/storage/myisam/ha_myisam.h
index 024675075c2..635f314b3da 100644
--- a/storage/myisam/ha_myisam.h
+++ b/storage/myisam/ha_myisam.h
@@ -60,11 +60,6 @@ class ha_myisam: public handler
uint max_supported_key_part_length() const { return MI_MAX_KEY_LENGTH; }
uint checksum() const;
- virtual bool check_if_locking_is_allowed(uint sql_command,
- ulong type, TABLE *table,
- uint count, uint current,
- uint *system_count,
- bool called_by_logger_thread);
int open(const char *name, int mode, uint test_if_locked);
int close(void);
int write_row(uchar * buf);
diff --git a/storage/myisam/mi_test1.c b/storage/myisam/mi_test1.c
index 1165ea4bb32..08627ba7e92 100644
--- a/storage/myisam/mi_test1.c
+++ b/storage/myisam/mi_test1.c
@@ -258,7 +258,8 @@ static int run_test(const char *filename)
continue;
create_key(key,j);
my_errno=0;
- if ((error = mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT)))
+ if ((error = mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,
+ HA_READ_KEY_EXACT)))
{
if (verbose || (flags[j] >= 1 ||
(error && my_errno != HA_ERR_KEY_NOT_FOUND)))
@@ -285,7 +286,7 @@ static int run_test(const char *filename)
{
create_key(key,i);
my_errno=0;
- error=mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT);
+ error=mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT);
if (verbose ||
(error == 0 && flags[i] == 0 && unique_key) ||
(error && (flags[i] != 0 || my_errno != HA_ERR_KEY_NOT_FOUND)))
diff --git a/storage/myisam/mi_test2.c b/storage/myisam/mi_test2.c
index 96ee82e023c..99d0c23d2a4 100644
--- a/storage/myisam/mi_test2.c
+++ b/storage/myisam/mi_test2.c
@@ -263,7 +263,7 @@ int main(int argc, char *argv[])
if (!j)
for (j=999 ; j>0 && key1[j] == 0 ; j--) ;
sprintf(key,"%6d",j);
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT))
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
{
printf("Test in loop: Can't find key: \"%s\"\n",key);
goto err;
@@ -291,7 +291,7 @@ int main(int argc, char *argv[])
if (j != 0)
{
sprintf(key,"%6d",j);
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT))
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
{
printf("can't find key1: \"%s\"\n",key);
goto err;
@@ -325,7 +325,7 @@ int main(int argc, char *argv[])
if (j != 0)
{
sprintf(key,"%6d",j);
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT))
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
{
printf("can't find key1: \"%s\"\n",key);
goto err;
@@ -377,7 +377,7 @@ int main(int argc, char *argv[])
DBUG_PRINT("progpos",("first - next -> last - prev -> first"));
if (verbose) printf(" Using key: \"%s\" Keys: %d\n",key,dupp_keys);
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT))
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
goto err;
if (mi_rsame(file,read_record2,-1))
goto err;
@@ -422,7 +422,7 @@ int main(int argc, char *argv[])
}
/* Check of mi_rnext_same */
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT))
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
goto err;
ant=1;
while (!mi_rnext_same(file,read_record3) && ant < dupp_keys+10)
@@ -496,7 +496,7 @@ int main(int argc, char *argv[])
goto err;
if (bcmp(read_record2,read_record3,reclength))
printf("Can't find last record\n");
-
+#ifdef NOT_ANYMORE
if (!silent)
puts("- Test read key-part");
strmov(key2,key);
@@ -514,12 +514,14 @@ int main(int argc, char *argv[])
goto end;
}
}
+#endif
if (dupp_keys > 2)
{
if (!silent)
printf("- Read key (first) - next - delete - next -> last\n");
DBUG_PRINT("progpos",("first - next - delete - next -> last"));
- if (mi_rkey(file,read_record,0,key,0,HA_READ_KEY_EXACT)) goto err;
+ if (mi_rkey(file,read_record,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
+ goto err;
if (mi_rnext(file,read_record3,0)) goto err;
if (mi_delete(file,read_record3)) goto err;
opt_delete++;
@@ -555,7 +557,8 @@ int main(int argc, char *argv[])
if (!silent)
printf("- Read first - delete - next -> last\n");
DBUG_PRINT("progpos",("first - delete - next -> last"));
- if (mi_rkey(file,read_record3,0,key,0,HA_READ_KEY_EXACT)) goto err;
+ if (mi_rkey(file,read_record3,0,key,HA_WHOLE_KEY,HA_READ_KEY_EXACT))
+ goto err;
if (mi_delete(file,read_record3)) goto err;
opt_delete++;
ant=1;
@@ -618,10 +621,10 @@ int main(int argc, char *argv[])
copy_key(file,(uint) i,(uchar*) read_record,(uchar*) key);
copy_key(file,(uint) i,(uchar*) read_record2,(uchar*) key2);
min_key.key= key;
- min_key.length= USE_WHOLE_KEY;
+ min_key.keypart_map= HA_WHOLE_KEY;
min_key.flag= HA_READ_KEY_EXACT;
max_key.key= key2;
- max_key.length= USE_WHOLE_KEY;
+ max_key.keypart_map= HA_WHOLE_KEY;
max_key.flag= HA_READ_AFTER_KEY;
range_records= mi_records_in_range(file,(int) i, &min_key, &max_key);
diff --git a/storage/myisam/mi_test3.c b/storage/myisam/mi_test3.c
index 982b999c3a5..ed9cd8e7b8c 100644
--- a/storage/myisam/mi_test3.c
+++ b/storage/myisam/mi_test3.c
@@ -243,8 +243,8 @@ int test_read(MI_INFO *file,int id)
for (i=0 ; i < 100 ; i++)
{
find=rnd(100000);
- if (!mi_rkey(file,record.id,1,(uchar*) &find,
- sizeof(find),HA_READ_KEY_EXACT))
+ if (!mi_rkey(file,record.id,1,(uchar*) &find, HA_WHOLE_KEY,
+ HA_READ_KEY_EXACT))
found++;
else
{
@@ -426,8 +426,8 @@ int test_update(MI_INFO *file,int id,int lock_type)
{
tmp=rnd(100000);
int4store(find,tmp);
- if (!mi_rkey(file,record.id,1,(uchar*) find,
- sizeof(find),HA_READ_KEY_EXACT))
+ if (!mi_rkey(file,record.id,1,(uchar*) find, HA_WHOLE_KEY,
+ HA_READ_KEY_EXACT))
found++;
else
{
diff --git a/storage/ndb/src/mgmclient/Makefile.am b/storage/ndb/src/mgmclient/Makefile.am
index 8e05354919b..41f659cf68d 100644
--- a/storage/ndb/src/mgmclient/Makefile.am
+++ b/storage/ndb/src/mgmclient/Makefile.am
@@ -36,6 +36,7 @@ INCLUDES += -I$(top_srcdir)/storage/ndb/include/mgmapi \
LDADD_LOC = $(noinst_LTLIBRARIES) \
../common/portlib/libportlib.la \
@readline_link@ \
+ $(top_builddir)/storage/ndb/src/libndbclient.la \
$(top_builddir)/dbug/libdbug.a \
$(top_builddir)/mysys/libmysys.a \
$(top_builddir)/strings/libmystrings.a \
diff --git a/storage/ndb/src/mgmsrv/Makefile.am b/storage/ndb/src/mgmsrv/Makefile.am
index adde2ad5d34..c19f885ae8d 100644
--- a/storage/ndb/src/mgmsrv/Makefile.am
+++ b/storage/ndb/src/mgmsrv/Makefile.am
@@ -38,7 +38,7 @@ INCLUDES_LOC = -I$(top_srcdir)/storage/ndb/src/ndbapi \
-I$(top_srcdir)/storage/ndb/src/common/mgmcommon \
-I$(top_srcdir)/storage/ndb/src/mgmclient
-LDADD_LOC = $(top_builddir)/storage/ndb/src/mgmclient/CommandInterpreter.o \
+LDADD_LOC = $(top_builddir)/storage/ndb/src/mgmclient/CommandInterpreter.lo \
$(top_builddir)/storage/ndb/src/libndbclient.la \
$(top_builddir)/dbug/libdbug.a \
$(top_builddir)/mysys/libmysys.a \
diff --git a/storage/ndb/src/ndbapi/NdbScanOperation.cpp b/storage/ndb/src/ndbapi/NdbScanOperation.cpp
index fa94bf8d836..89782453a72 100644
--- a/storage/ndb/src/ndbapi/NdbScanOperation.cpp
+++ b/storage/ndb/src/ndbapi/NdbScanOperation.cpp
@@ -1202,7 +1202,7 @@ NdbIndexScanOperation::setBound(const NdbColumnImpl* tAttrInfo,
Uint32 tupKeyLen = theTupKeyLen;
union {
Uint32 tempData[2000];
- Uint64 __align;
+ Uint64 __my_align;
};
Uint64 *valPtr;
if(remaining > totalLen && aligned && nobytes){
diff --git a/storage/ndb/test/ndbapi/benchronja.cpp b/storage/ndb/test/ndbapi/benchronja.cpp
index 4973e6e2487..73ee324a888 100644
--- a/storage/ndb/test/ndbapi/benchronja.cpp
+++ b/storage/ndb/test/ndbapi/benchronja.cpp
@@ -41,7 +41,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 256
+#define NDB_MAXTHREADS 256
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXATTRSIZE 8000
#define START_TIMER NdbTimer timer; timer.doStart();
#define STOP_TIMER timer.doStop();
@@ -56,18 +63,18 @@ struct ThreadNdb
Ndb* NdbRef;
};
-static NdbThread* threadLife[MAXTHREADS];
+static NdbThread* threadLife[NDB_MAXTHREADS];
static unsigned int tNoOfThreads;
static unsigned int tNoOfOpsPerExecute;
static unsigned int tNoOfRecords;
static unsigned int tNoOfOperations;
-static int ThreadReady[MAXTHREADS];
-static int ThreadStart[MAXTHREADS];
+static int ThreadReady[NDB_MAXTHREADS];
+static int ThreadStart[NDB_MAXTHREADS];
NDB_COMMAND(benchronja, "benchronja", "benchronja", "benchronja", 65535){
ndb_init();
- ThreadNdb tabThread[MAXTHREADS];
+ ThreadNdb tabThread[NDB_MAXTHREADS];
int i = 0 ;
int cont = 0 ;
Ndb* pMyNdb = NULL ; //( "TEST_DB" );
@@ -84,7 +91,7 @@ NDB_COMMAND(benchronja, "benchronja", "benchronja", "benchronja", 65535){
{
if (strcmp(argv[i], "-t") == 0){
tNoOfThreads = atoi(argv[i+1]);
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS)) goto error_input;
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS)) goto error_input;
}else if (strcmp(argv[i], "-o") == 0){
tNoOfOperations = atoi(argv[i+1]);
if (tNoOfOperations < 1) goto error_input;
diff --git a/storage/ndb/test/ndbapi/flexAsynch.cpp b/storage/ndb/test/ndbapi/flexAsynch.cpp
index 20a157fc2f3..1f52315482f 100644
--- a/storage/ndb/test/ndbapi/flexAsynch.cpp
+++ b/storage/ndb/test/ndbapi/flexAsynch.cpp
@@ -35,7 +35,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 128
+#define NDB_MAXTHREADS 128
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXPAR 1024
#define MAXATTRSIZE 1000
#define PKSIZE 2
@@ -76,10 +83,10 @@ struct ThreadNdb
int ThreadNo;
};
-static NdbThread* threadLife[MAXTHREADS];
+static NdbThread* threadLife[NDB_MAXTHREADS];
static int tNodeId;
-static int ThreadReady[MAXTHREADS];
-static StartType ThreadStart[MAXTHREADS];
+static int ThreadReady[NDB_MAXTHREADS];
+static StartType ThreadStart[NDB_MAXTHREADS];
static char tableName[MAXTABLES][MAXSTRLEN+1];
static char attrName[MAXATTR][MAXSTRLEN+1];
@@ -160,7 +167,7 @@ NDB_COMMAND(flexAsynch, "flexAsynch", "flexAsynch", "flexAsynch", 65535)
return NDBT_ProgramExit(NDBT_WRONGARGS);
}
- pThreadData = new ThreadNdb[MAXTHREADS];
+ pThreadData = new ThreadNdb[NDB_MAXTHREADS];
ndbout << endl << "FLEXASYNCH - Starting normal mode" << endl;
ndbout << "Perform benchmark of insert, update and delete transactions";
@@ -844,7 +851,7 @@ readArguments(int argc, const char** argv){
while (argc > 1){
if (strcmp(argv[i], "-t") == 0){
tNoOfThreads = atoi(argv[i+1]);
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS)){
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS)){
ndbout_c("Invalid no of threads");
return -1;
}
diff --git a/storage/ndb/test/ndbapi/flexHammer.cpp b/storage/ndb/test/ndbapi/flexHammer.cpp
index 9b9fd7a4a92..1b0097cf84b 100644
--- a/storage/ndb/test/ndbapi/flexHammer.cpp
+++ b/storage/ndb/test/ndbapi/flexHammer.cpp
@@ -66,7 +66,14 @@ ErrorData * flexHammerErrorData;
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 256
+#define NDB_MAXTHREADS 256
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXATTRSIZE 100
// Max number of retries if something fails
#define MaxNoOfAttemptsC 10
@@ -119,8 +126,8 @@ static int tAttributeSize;
static int tNoOfOperations;
static int tNoOfRecords;
static int tNoOfLoops;
-static ReadyType ThreadReady[MAXTHREADS];
-static StartType ThreadStart[MAXTHREADS];
+static ReadyType ThreadReady[NDB_MAXTHREADS];
+static StartType ThreadStart[NDB_MAXTHREADS];
static char tableName[MAXTABLES][MAXSTRLEN];
static char attrName[MAXATTR][MAXSTRLEN];
static int theSimpleFlag = 0;
@@ -640,7 +647,7 @@ readArguments (int argc, const char** argv)
while (argc > 1) {
if (strcmp(argv[i], "-t") == 0) {
tNoOfThreads = atoi(argv[i+1]);
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS))
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS))
return(1);
}
else if (strcmp(argv[i], "-o") == 0) {
diff --git a/storage/ndb/test/ndbapi/flexScan.cpp b/storage/ndb/test/ndbapi/flexScan.cpp
index e0b07250762..105dfeedfff 100644
--- a/storage/ndb/test/ndbapi/flexScan.cpp
+++ b/storage/ndb/test/ndbapi/flexScan.cpp
@@ -68,7 +68,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 256
+#define NDB_MAXTHREADS 256
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXATTRSIZE 64
enum StartType {
@@ -848,7 +855,7 @@ static int readArguments(int argc, const char** argv)
if (strcmp(argv[i], "-t") == 0) {
if (argv[i + 1] != NULL) {
tNoOfThreads = atoi(argv[i + 1]);
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS)) {
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS)) {
retValue = -1;
} // if
} // if
diff --git a/storage/ndb/test/ndbapi/flexTT.cpp b/storage/ndb/test/ndbapi/flexTT.cpp
index 71d5b6c096e..4373102f77e 100644
--- a/storage/ndb/test/ndbapi/flexTT.cpp
+++ b/storage/ndb/test/ndbapi/flexTT.cpp
@@ -35,7 +35,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 128
+#define NDB_MAXTHREADS 128
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXPAR 1024
#define MAXATTRSIZE 1000
#define PKSIZE 1
@@ -101,10 +108,10 @@ static void input_error();
ErrorData * flexTTErrorData;
-static NdbThread* threadLife[MAXTHREADS];
+static NdbThread* threadLife[NDB_MAXTHREADS];
static int tNodeId;
-static int ThreadReady[MAXTHREADS];
-static StartType ThreadStart[MAXTHREADS];
+static int ThreadReady[NDB_MAXTHREADS];
+static StartType ThreadStart[NDB_MAXTHREADS];
static char tableName[1][MAXSTRLEN+1];
static char attrName[5][MAXSTRLEN+1];
@@ -184,7 +191,7 @@ NDB_COMMAND(flexTT, "flexTT", "flexTT", "flexTT", 65535)
return NDBT_ProgramExit(NDBT_WRONGARGS);
}
- pThreadData = new ThreadNdb[MAXTHREADS];
+ pThreadData = new ThreadNdb[NDB_MAXTHREADS];
ndbout << endl << "FLEXTT - Starting normal mode" << endl;
ndbout << "Perform TimesTen benchmark" << endl;
@@ -798,7 +805,7 @@ readArguments(int argc, const char** argv){
while (argc > 1){
if (strcmp(argv[i], "-t") == 0){
tNoOfThreads = atoi(argv[i+1]);
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS)){
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS)){
ndbout_c("Invalid no of threads");
return -1;
}
diff --git a/storage/ndb/test/ndbapi/flexTimedAsynch.cpp b/storage/ndb/test/ndbapi/flexTimedAsynch.cpp
index cc44ab8b237..b6301e59df2 100644
--- a/storage/ndb/test/ndbapi/flexTimedAsynch.cpp
+++ b/storage/ndb/test/ndbapi/flexTimedAsynch.cpp
@@ -57,7 +57,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 256
+#define NDB_MAXTHREADS 256
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXATTRSIZE 1000
#define PKSIZE 1
@@ -95,10 +102,10 @@ static int failed = 0 ; // lame global variable that keeps track of failed trans
// incremented in executeCallback() and reset in main()
/************************************************************* < epaulsa */
-static NdbThread* threadLife[MAXTHREADS];
+static NdbThread* threadLife[NDB_MAXTHREADS];
static int tNodeId;
-static int ThreadReady[MAXTHREADS];
-static StartType ThreadStart[MAXTHREADS];
+static int ThreadReady[NDB_MAXTHREADS];
+static StartType ThreadStart[NDB_MAXTHREADS];
static char tableName[MAXTABLES][MAXSTRLEN+1];
static char attrName[MAXATTR][MAXSTRLEN+1];
static int *getAttrValueTable;
@@ -174,7 +181,7 @@ void deleteAttributeSpace(){
NDB_COMMAND(flexTimedAsynch, "flexTimedAsynch", "flexTimedAsynch [-tpoilcas]", "flexTimedAsynch", 65535)
{
ndb_init();
- ThreadNdb tabThread[MAXTHREADS];
+ ThreadNdb tabThread[NDB_MAXTHREADS];
int tLoops=0;
int returnValue;
//NdbOut flexTimedAsynchNdbOut;
@@ -615,8 +622,8 @@ void readArguments(int argc, const char** argv)
if (strcmp(argv[i], "-t") == 0)
{
tNoOfThreads = atoi(argv[i+1]);
- // if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS))
- if ((tNoOfThreads < 1) || (tNoOfThreads > MAXTHREADS))
+ // if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS))
+ if ((tNoOfThreads < 1) || (tNoOfThreads > NDB_MAXTHREADS))
exit(-1);
}
else if (strcmp(argv[i], "-i") == 0)
@@ -628,7 +635,7 @@ void readArguments(int argc, const char** argv)
else if (strcmp(argv[i], "-p") == 0)
{
tNoOfTransInBatch = atoi(argv[i+1]);
- //if ((tNoOfTransInBatch < 1) || (tNoOfTransInBatch > MAXTHREADS))
+ //if ((tNoOfTransInBatch < 1) || (tNoOfTransInBatch > NDB_MAXTHREADS))
if ((tNoOfTransInBatch < 1) || (tNoOfTransInBatch > 10000))
exit(-1);
}
diff --git a/storage/ndb/test/ndbapi/initronja.cpp b/storage/ndb/test/ndbapi/initronja.cpp
index 170c3dd5cfb..28ffa9f211d 100644
--- a/storage/ndb/test/ndbapi/initronja.cpp
+++ b/storage/ndb/test/ndbapi/initronja.cpp
@@ -29,7 +29,14 @@
#define MAXSTRLEN 16
#define MAXATTR 64
#define MAXTABLES 64
-#define MAXTHREADS 256
+#define NDB_MAXTHREADS 256
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
#define MAXATTRSIZE 8000
static unsigned int tNoOfRecords;
diff --git a/storage/ndb/test/ndbapi/testIndexStat.cpp b/storage/ndb/test/ndbapi/testIndexStat.cpp
index 7c69361a732..0e15cdd80d1 100644
--- a/storage/ndb/test/ndbapi/testIndexStat.cpp
+++ b/storage/ndb/test/ndbapi/testIndexStat.cpp
@@ -1210,8 +1210,8 @@ struct V_rir {
static double data(const Range& range) { return (double)range.errpct; }
};
-template static void computestat<Key, V_rpk>(Stat& stat);
-template static void computestat<Range, V_rir>(Stat& stat);
+template void computestat<Key, V_rpk>(Stat& stat);
+template void computestat<Range, V_rir>(Stat& stat);
static Stat g_stat_rpk; // summaries over loops
static Stat g_stat_rir;
@@ -1297,43 +1297,43 @@ my_long_options[] =
{
NDB_STD_OPTS("testIndexStat"),
{ "loglevel", 1001, "Logging level in this program 0-3 (default 0)",
- (gptr*)&g_opts.loglevel, (gptr*)&g_opts.loglevel, 0,
+ (uchar **)&g_opts.loglevel, (uchar **)&g_opts.loglevel, 0,
GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "seed", 1002, "Random seed (0=loop number, default -1=random)",
- (gptr*)&g_opts.seed, (gptr*)&g_opts.seed, 0,
+ (uchar **)&g_opts.seed, (uchar **)&g_opts.seed, 0,
GET_INT, REQUIRED_ARG, -1, 0, 0, 0, 0, 0 },
{ "loop", 1003, "Number of test loops (default 1, 0=forever)",
- (gptr*)&g_opts.loop, (gptr*)&g_opts.loop, 0,
+ (uchar **)&g_opts.loop, (uchar **)&g_opts.loop, 0,
GET_INT, REQUIRED_ARG, 1, 0, 0, 0, 0, 0 },
{ "rows", 1004, "Number of rows (default 100000)",
- (gptr*)&g_opts.rows, (gptr*)&g_opts.rows, 0,
+ (uchar **)&g_opts.rows, (uchar **)&g_opts.rows, 0,
GET_UINT, REQUIRED_ARG, 100000, 0, 0, 0, 0, 0 },
{ "ops", 1005, "Number of index scans per loop (default 1000)",
- (gptr*)&g_opts.ops, (gptr*)&g_opts.ops, 0,
+ (uchar **)&g_opts.ops, (uchar **)&g_opts.ops, 0,
GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
{ "dupkeys", 1006, "Pct records per key (min 100, default 1000)",
- (gptr*)&g_opts.dupkeys, (gptr*)&g_opts.dupkeys, 0,
+ (uchar **)&g_opts.dupkeys, (uchar **)&g_opts.dupkeys, 0,
GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
{ "scanpct", 1007, "Preferred max pct of total rows per scan (default 5)",
- (gptr*)&g_opts.scanpct, (gptr*)&g_opts.scanpct, 0,
+ (uchar **)&g_opts.scanpct, (uchar **)&g_opts.scanpct, 0,
GET_UINT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
{ "nullkeys", 1008, "Pct nulls in each key attribute (default 10)",
- (gptr*)&g_opts.nullkeys, (gptr*)&g_opts.nullkeys, 0,
+ (uchar **)&g_opts.nullkeys, (uchar **)&g_opts.nullkeys, 0,
GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
{ "eqscans", 1009, "Pct scans for partial/full equality (default 50)",
- (gptr*)&g_opts.eqscans, (gptr*)&g_opts.eqscans, 0,
+ (uchar **)&g_opts.eqscans, (uchar **)&g_opts.eqscans, 0,
GET_UINT, REQUIRED_ARG, 50, 0, 0, 0, 0, 0 },
{ "dupscans", 1010, "Pct scans using same bounds (default 10)",
- (gptr*)&g_opts.dupscans, (gptr*)&g_opts.dupscans, 0,
+ (uchar **)&g_opts.dupscans, (uchar **)&g_opts.dupscans, 0,
GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
{ "keeptable", 1011, "Use existing table and data if any and do not drop",
- (gptr*)&g_opts.keeptable, (gptr*)&g_opts.keeptable, 0,
+ (uchar **)&g_opts.keeptable, (uchar **)&g_opts.keeptable, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "no-extra-checks", 1012, "Omit expensive consistency checks",
- (gptr*)&g_opts.nochecks, (gptr*)&g_opts.nochecks, 0,
+ (uchar **)&g_opts.nochecks, (uchar **)&g_opts.nochecks, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "abort-on-error", 1013, "Dump core on any error",
- (gptr*)&g_opts.abort, (gptr*)&g_opts.abort, 0,
+ (uchar **)&g_opts.abort, (uchar **)&g_opts.abort, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0,
0, 0, 0,
diff --git a/storage/ndb/test/ndbapi/testOperations.cpp b/storage/ndb/test/ndbapi/testOperations.cpp
index 38d6e817637..95be2b988e1 100644
--- a/storage/ndb/test/ndbapi/testOperations.cpp
+++ b/storage/ndb/test/ndbapi/testOperations.cpp
@@ -99,11 +99,6 @@ OperationTestCase matrix[] = {
break; }
#define C3(b) if (!(b)) { \
- g_err << "ERR: "<< step->getName() \
- << " failed on line " << __LINE__ << endl; \
- abort(); return NDBT_FAILED; }
-
-#define C3(b) if (!(b)) { \
g_err << "ERR: failed on line " << __LINE__ << endl; \
return NDBT_FAILED; }
diff --git a/storage/ndb/test/ndbapi/testScanFilter.cpp b/storage/ndb/test/ndbapi/testScanFilter.cpp
index ac0b0ed2c4d..dfe1097bd25 100644
--- a/storage/ndb/test/ndbapi/testScanFilter.cpp
+++ b/storage/ndb/test/ndbapi/testScanFilter.cpp
@@ -49,7 +49,15 @@ const char COL_LEN = 7;
* there are six columns, 'i', 'j', 'k', 'l', 'm', 'n', and each on is equal to 1 or 1,
* Since each tuple should be unique in this case, then TUPLE_NUM = 2 power 6 = 64
*/
-const int TUPLE_NUM = (int)pow(2, COL_LEN-1);
+#ifdef _AIX
+/*
+ IBM xlC_r breaks on the initialization with pow():
+ "The expression must be an integral constant expression."
+*/
+const int TUPLE_NUM = 64;
+#else
+const int TUPLE_NUM = (int)pow(2, COL_LEN-1);
+#endif
/*
* the recursive level of random scan filter, can
@@ -479,7 +487,7 @@ int get_column_id(char ch)
*/
bool check_col_equal_one(int tuple_no, int col_id)
{
- int i = (int)pow(2, 6 - col_id);
+ int i = (int)pow((double)2, (double)(6 - col_id));
int j = tuple_no / i;
if(j % 2)
return true;
diff --git a/storage/ndb/test/ndbapi/test_event_merge.cpp b/storage/ndb/test/ndbapi/test_event_merge.cpp
index 662b1eb6f4c..d40b985adc2 100644
--- a/storage/ndb/test/ndbapi/test_event_merge.cpp
+++ b/storage/ndb/test/ndbapi/test_event_merge.cpp
@@ -2184,57 +2184,57 @@ my_long_options[] =
{
NDB_STD_OPTS("test_event_merge"),
{ "abort-on-error", 1001, "Do abort() on any error",
- (gptr*)&g_opts.abort_on_error, (gptr*)&g_opts.abort_on_error, 0,
+ (uchar **)&g_opts.abort_on_error, (uchar **)&g_opts.abort_on_error, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "loglevel", 1002, "Logging level in this program 0-3 (default 0)",
- (gptr*)&g_opts.loglevel, (gptr*)&g_opts.loglevel, 0,
+ (uchar **)&g_opts.loglevel, (uchar **)&g_opts.loglevel, 0,
GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "loop", 1003, "Number of test loops (default 5, 0=forever)",
- (gptr*)&g_opts.loop, (gptr*)&g_opts.loop, 0,
+ (uchar **)&g_opts.loop, (uchar **)&g_opts.loop, 0,
GET_INT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
{ "maxops", 1004, "Approx number of PK operations per table (default 1000)",
- (gptr*)&g_opts.maxops, (gptr*)&g_opts.maxops, 0,
+ (uchar **)&g_opts.maxops, (uchar **)&g_opts.maxops, 0,
GET_UINT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
{ "maxpk", 1005, "Number of different PK values (default 10, max 1000)",
- (gptr*)&g_opts.maxpk, (gptr*)&g_opts.maxpk, 0,
+ (uchar **)&g_opts.maxpk, (uchar **)&g_opts.maxpk, 0,
GET_UINT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
{ "maxtab", 1006, "Number of tables (default 10, max 100)",
- (gptr*)&g_opts.maxtab, (gptr*)&g_opts.maxtab, 0,
+ (uchar **)&g_opts.maxtab, (uchar **)&g_opts.maxtab, 0,
GET_INT, REQUIRED_ARG, 10, 0, 0, 0, 0, 0 },
{ "no-blobs", 1007, "Omit blob attributes (5.0: true)",
- (gptr*)&g_opts.no_blobs, (gptr*)&g_opts.no_blobs, 0,
+ (uchar **)&g_opts.no_blobs, (uchar **)&g_opts.no_blobs, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "no-implicit-nulls", 1008, "Insert must include all attrs"
" i.e. no implicit NULLs",
- (gptr*)&g_opts.no_implicit_nulls, (gptr*)&g_opts.no_implicit_nulls, 0,
+ (uchar **)&g_opts.no_implicit_nulls, (uchar **)&g_opts.no_implicit_nulls, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "no-missing-update", 1009, "Update must include all non-PK attrs",
- (gptr*)&g_opts.no_missing_update, (gptr*)&g_opts.no_missing_update, 0,
+ (uchar **)&g_opts.no_missing_update, (uchar **)&g_opts.no_missing_update, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "no-multiops", 1010, "Allow only 1 operation per commit",
- (gptr*)&g_opts.no_multiops, (gptr*)&g_opts.no_multiops, 0,
+ (uchar **)&g_opts.no_multiops, (uchar **)&g_opts.no_multiops, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "no-nulls", 1011, "Create no NULL values",
- (gptr*)&g_opts.no_nulls, (gptr*)&g_opts.no_nulls, 0,
+ (uchar **)&g_opts.no_nulls, (uchar **)&g_opts.no_nulls, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "one-blob", 1012, "Only one blob attribute (default 2)",
- (gptr*)&g_opts.one_blob, (gptr*)&g_opts.one_blob, 0,
+ (uchar **)&g_opts.one_blob, (uchar **)&g_opts.one_blob, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "opstring", 1013, "Operations to run e.g. idiucdc (c is commit) or"
" iuuc:uudc (the : separates loops)",
- (gptr*)&g_opts.opstring, (gptr*)&g_opts.opstring, 0,
+ (uchar **)&g_opts.opstring, (uchar **)&g_opts.opstring, 0,
GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "seed", 1014, "Random seed (0=loop number, default -1=random)",
- (gptr*)&g_opts.seed, (gptr*)&g_opts.seed, 0,
+ (uchar **)&g_opts.seed, (uchar **)&g_opts.seed, 0,
GET_INT, REQUIRED_ARG, -1, 0, 0, 0, 0, 0 },
{ "separate-events", 1015, "Do not combine events per GCI (5.0: true)",
- (gptr*)&g_opts.separate_events, (gptr*)&g_opts.separate_events, 0,
+ (uchar **)&g_opts.separate_events, (uchar **)&g_opts.separate_events, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "tweak", 1016, "Whatever the source says",
- (gptr*)&g_opts.tweak, (gptr*)&g_opts.tweak, 0,
+ (uchar **)&g_opts.tweak, (uchar **)&g_opts.tweak, 0,
GET_UINT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "use-table", 1017, "Use existing tables",
- (gptr*)&g_opts.use_table, (gptr*)&g_opts.use_table, 0,
+ (uchar **)&g_opts.use_table, (uchar **)&g_opts.use_table, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0,
0, 0, 0,
diff --git a/storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp b/storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp
index 039a77f4d53..fb77220773d 100644
--- a/storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp
+++ b/storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp
@@ -27,7 +27,14 @@ using namespace std; //
#define MAXROW 64
#define DEFROW 8
-#define MAXTHREADS 24
+/*
+ NDB_MAXTHREADS used to be just MAXTHREADS, which collides with a
+ #define from <sys/thread.h> on AIX (IBM compiler). We explicitly
+ #undef it here lest someone use it by habit and get really funny
+ results. K&R says we may #undef non-existent symbols, so let's go.
+*/
+#undef MAXTHREADS
+#define NDB_MAXTHREADS 24
#define DEFTHREADS 2
#define MAXTABLES 16
@@ -83,7 +90,7 @@ int main(int argc, char* argv[]){
char* szTableNames = (char*)malloc(sizeof(char)*nNoOfTables*MAX_TABLE_NAME) ;
memset(szTableNames, 0, sizeof(char)*nNoOfTables*MAX_TABLE_NAME) ;
- UintPtr pThreadHandles[MAXTHREADS] = { NULL } ;
+ UintPtr pThreadHandles[NDB_MAXTHREADS] = { NULL } ;
AssignTableNames(szTableNames, nNoOfTables) ;
@@ -313,7 +320,7 @@ void ParseArguments(int argc, const char** argv){
if (strcmp(argv[i], "-t") == 0)
{
nNoOfThreads = atoi(argv[i+1]);
- if ((nNoOfThreads < 1) || (nNoOfThreads > MAXTHREADS))
+ if ((nNoOfThreads < 1) || (nNoOfThreads > NDB_MAXTHREADS))
nNoOfThreads = DEFTHREADS ;
}
else if (strcmp(argv[i], "-c") == 0)
diff --git a/storage/ndb/test/run-test/main.cpp b/storage/ndb/test/run-test/main.cpp
index 2e8d6bfde6d..b5c4385f5d3 100644
--- a/storage/ndb/test/run-test/main.cpp
+++ b/storage/ndb/test/run-test/main.cpp
@@ -77,60 +77,60 @@ my_bool opt_core;
static struct my_option g_options[] =
{
{ "help", '?', "Display this help and exit.",
- (gptr*) &g_help, (gptr*) &g_help,
+ (uchar **) &g_help, (uchar **) &g_help,
0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "version", 'V', "Output version information and exit.", 0, 0, 0,
GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "clusters", 256, "Cluster",
- (gptr*) &g_clusters, (gptr*) &g_clusters,
+ (uchar **) &g_clusters, (uchar **) &g_clusters,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "replicate", 1024, "replicate",
- (gptr*) &g_dummy, (gptr*) &g_dummy,
+ (uchar **) &g_dummy, (uchar **) &g_dummy,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "log-file", 256, "log-file",
- (gptr*) &g_log_filename, (gptr*) &g_log_filename,
+ (uchar **) &g_log_filename, (uchar **) &g_log_filename,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "testcase-file", 'f', "testcase-file",
- (gptr*) &g_test_case_filename, (gptr*) &g_test_case_filename,
+ (uchar **) &g_test_case_filename, (uchar **) &g_test_case_filename,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "report-file", 'r', "report-file",
- (gptr*) &g_report_filename, (gptr*) &g_report_filename,
+ (uchar **) &g_report_filename, (uchar **) &g_report_filename,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "basedir", 256, "Base path",
- (gptr*) &g_basedir, (gptr*) &g_basedir,
+ (uchar **) &g_basedir, (uchar **) &g_basedir,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "baseport", 256, "Base port",
- (gptr*) &g_baseport, (gptr*) &g_baseport,
+ (uchar **) &g_baseport, (uchar **) &g_baseport,
0, GET_INT, REQUIRED_ARG, g_baseport, 0, 0, 0, 0, 0},
{ "prefix", 256, "mysql install dir",
- (gptr*) &g_prefix, (gptr*) &g_prefix,
+ (uchar **) &g_prefix, (uchar **) &g_prefix,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
{ "verbose", 'v', "Verbosity",
- (gptr*) &g_verbosity, (gptr*) &g_verbosity,
+ (uchar **) &g_verbosity, (uchar **) &g_verbosity,
0, GET_INT, REQUIRED_ARG, g_verbosity, 0, 0, 0, 0, 0},
{ "configure", 256, "configure",
- (gptr*) &g_do_setup, (gptr*) &g_do_setup,
+ (uchar **) &g_do_setup, (uchar **) &g_do_setup,
0, GET_INT, REQUIRED_ARG, g_do_setup, 0, 0, 0, 0, 0 },
{ "deploy", 256, "deploy",
- (gptr*) &g_do_deploy, (gptr*) &g_do_deploy,
+ (uchar **) &g_do_deploy, (uchar **) &g_do_deploy,
0, GET_INT, REQUIRED_ARG, g_do_deploy, 0, 0, 0, 0, 0 },
{ "sshx", 256, "sshx",
- (gptr*) &g_do_sshx, (gptr*) &g_do_sshx,
+ (uchar **) &g_do_sshx, (uchar **) &g_do_sshx,
0, GET_INT, REQUIRED_ARG, g_do_sshx, 0, 0, 0, 0, 0 },
{ "start", 256, "start",
- (gptr*) &g_do_start, (gptr*) &g_do_start,
+ (uchar **) &g_do_start, (uchar **) &g_do_start,
0, GET_INT, REQUIRED_ARG, g_do_start, 0, 0, 0, 0, 0 },
{ "fqpn", 256, "Fully qualified path-names ",
- (gptr*) &g_fqpn, (gptr*) &g_fqpn,
+ (uchar **) &g_fqpn, (uchar **) &g_fqpn,
0, GET_INT, REQUIRED_ARG, g_fqpn, 0, 0, 0, 0, 0 },
{ "default-ports", 256, "Use default ports when possible",
- (gptr*) &g_default_ports, (gptr*) &g_default_ports,
+ (uchar **) &g_default_ports, (uchar **) &g_default_ports,
0, GET_INT, REQUIRED_ARG, g_default_ports, 0, 0, 0, 0, 0 },
{ "mode", 256, "Mode 0=interactive 1=regression 2=bench",
- (gptr*) &g_mode, (gptr*) &g_mode,
+ (uchar **) &g_mode, (uchar **) &g_mode,
0, GET_INT, REQUIRED_ARG, g_mode, 0, 0, 0, 0, 0 },
{ "quit", 256, "Quit before starting tests",
- (gptr*) &g_mode, (gptr*) &g_do_quit,
+ (uchar **) &g_mode, (uchar **) &g_do_quit,
0, GET_BOOL, NO_ARG, g_do_quit, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
};
diff --git a/storage/ndb/test/src/NDBT_Test.cpp b/storage/ndb/test/src/NDBT_Test.cpp
index b30430c73c1..69f3723ca75 100644
--- a/storage/ndb/test/src/NDBT_Test.cpp
+++ b/storage/ndb/test/src/NDBT_Test.cpp
@@ -1195,35 +1195,35 @@ static struct my_option my_long_options[] =
{
NDB_STD_OPTS(""),
{ "print", OPT_PRINT, "Print execution tree",
- (gptr*) &opt_print, (gptr*) &opt_print, 0,
+ (uchar **) &opt_print, (uchar **) &opt_print, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "print_html", OPT_PRINT_HTML, "Print execution tree in html table format",
- (gptr*) &opt_print_html, (gptr*) &opt_print_html, 0,
+ (uchar **) &opt_print_html, (uchar **) &opt_print_html, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "print_cases", OPT_PRINT_CASES, "Print list of test cases",
- (gptr*) &opt_print_cases, (gptr*) &opt_print_cases, 0,
+ (uchar **) &opt_print_cases, (uchar **) &opt_print_cases, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "records", 'r', "Number of records",
- (gptr*) &opt_records, (gptr*) &opt_records, 0,
+ (uchar **) &opt_records, (uchar **) &opt_records, 0,
GET_INT, REQUIRED_ARG, 1000, 0, 0, 0, 0, 0 },
{ "loops", 'l', "Number of loops",
- (gptr*) &opt_loops, (gptr*) &opt_loops, 0,
+ (uchar **) &opt_loops, (uchar **) &opt_loops, 0,
GET_INT, REQUIRED_ARG, 5, 0, 0, 0, 0, 0 },
{ "seed", 1024, "Random seed",
- (gptr*) &opt_seed, (gptr*) &opt_seed, 0,
+ (uchar **) &opt_seed, (uchar **) &opt_seed, 0,
GET_INT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "testname", 'n', "Name of test to run",
- (gptr*) &opt_testname, (gptr*) &opt_testname, 0,
+ (uchar **) &opt_testname, (uchar **) &opt_testname, 0,
GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "remote_mgm", 'm',
"host:port to mgmsrv of remote cluster",
- (gptr*) &opt_remote_mgm, (gptr*) &opt_remote_mgm, 0,
+ (uchar **) &opt_remote_mgm, (uchar **) &opt_remote_mgm, 0,
GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 },
{ "timer", 't', "Print execution time",
- (gptr*) &opt_timer, (gptr*) &opt_timer, 0,
+ (uchar **) &opt_timer, (uchar **) &opt_timer, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ "verbose", 'v', "Print verbose status",
- (gptr*) &opt_verbose, (gptr*) &opt_verbose, 0,
+ (uchar **) &opt_verbose, (uchar **) &opt_verbose, 0,
GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
};
diff --git a/win/README b/win/README
index fbcdfd068b8..afa4bd65163 100644
--- a/win/README
+++ b/win/README
@@ -63,7 +63,9 @@ The options right now are:
MYSQL_TCP_PORT=<port> Server port, default 3306
CYBOZU Default character set is UTF8
EMBED_MANIFESTS Embed custom manifests into final exes, otherwise VS
- default will be used.
+ default will be used. (Note - This option should only be
+ used by MySQL AB.)
+
So the command line could look like:
diff --git a/win/create_manifest.js b/win/create_manifest.js
index 8569bd508ff..dec8f6e62e2 100755
--- a/win/create_manifest.js
+++ b/win/create_manifest.js
@@ -56,7 +56,7 @@ try
manifest_xml+= "\t<assemblyIdentity name=\'" + app_name + "\'";
manifest_xml+= " version=\'" + app_version + "\'";
manifest_xml+= " processorArchitecture=\'" + app_arch + "\'";
- // TOADD - Add publicKeyToken attribute once we have Authenticode key.
+ manifest_xml+= " publicKeyToken=\'02ad33b422233ae3\'";
manifest_xml+= " type=\'win32\' />\r\n";
// Identify the application security requirements.
manifest_xml+= "\t<trustInfo xmlns=\'urn:schemas-microsoft-com:asm.v2\'>\r\n";
diff --git a/win/mysql_manifest.cmake b/win/mysql_manifest.cmake
index 4c88be1d800..0d429e438d6 100755
--- a/win/mysql_manifest.cmake
+++ b/win/mysql_manifest.cmake
@@ -14,7 +14,8 @@ MACRO(MYSQL_EMBED_MANIFEST _target_name _required_privs)
ADD_CUSTOM_COMMAND(
TARGET ${_target_name}
POST_BUILD
- COMMAND mt.exe
- ARGS -nologo -manifest $(IntDir)\\$(TargetFileName).intermediate.manifest -outputresource:$(TargetPath)
- COMMENT "Embeds the manifest contents.")
+ COMMAND mt.exe ARGS -nologo -hashupdate -makecdfs -manifest $(IntDir)\\$(TargetFileName).intermediate.manifest -outputresource:$(TargetPath)
+ COMMAND makecat.exe ARGS $(IntDir)\\$(TargetFileName).intermediate.manifest.cdf
+ COMMAND signtool.exe ARGS sign /a /t http://timestamp.verisign.com/scripts/timstamp.dll $(TargetPath)
+ COMMENT "Embeds the manifest contents, creates a cryptographic catalog, signs the target with Authenticode certificate.")
ENDMACRO(MYSQL_EMBED_MANIFEST)