mysql-5.1 -> mysql-5.5 merge

This commit is contained in:
Sergei Golubchik 2010-11-05 10:59:51 +01:00
commit bc2e383e4a
94 changed files with 2031 additions and 1163 deletions

View file

@ -3105,3 +3105,6 @@ libmysqld/mysqlserver_depends.c
libmysqld/examples/mysql_embedded
sql/.empty
mysys/thr_lock
libmysqld/sql_admin.cc
libmysqld/sql_alter.cc
libmysqld/sql_partition_admin.cc

View file

@ -112,6 +112,7 @@ static my_bool parsing_disabled= 0;
static my_bool display_result_vertically= FALSE, display_result_lower= FALSE,
display_metadata= FALSE, display_result_sorted= FALSE;
static my_bool disable_query_log= 0, disable_result_log= 0;
static my_bool disable_connect_log= 1;
static my_bool disable_warnings= 0;
static my_bool disable_info= 1;
static my_bool abort_on_error= 1;
@ -257,6 +258,7 @@ struct st_connection
pthread_mutex_t result_mutex;
pthread_cond_t result_cond;
int query_done;
my_bool has_thread;
#endif /*EMBEDDED_LIBRARY*/
};
@ -286,6 +288,7 @@ enum enum_commands {
Q_EVAL_RESULT,
Q_ENABLE_QUERY_LOG, Q_DISABLE_QUERY_LOG,
Q_ENABLE_RESULT_LOG, Q_DISABLE_RESULT_LOG,
Q_ENABLE_CONNECT_LOG, Q_DISABLE_CONNECT_LOG,
Q_WAIT_FOR_SLAVE_TO_STOP,
Q_ENABLE_WARNINGS, Q_DISABLE_WARNINGS,
Q_ENABLE_INFO, Q_DISABLE_INFO,
@ -351,6 +354,8 @@ const char *command_names[]=
/* Enable/disable that the _result_ from a query is logged to result file */
"enable_result_log",
"disable_result_log",
"enable_connect_log",
"disable_connect_log",
"wait_for_slave_to_stop",
"enable_warnings",
"disable_warnings",
@ -763,7 +768,6 @@ end_thread:
return 0;
}
static void wait_query_thread_done(struct st_connection *con)
{
DBUG_ASSERT(con->tid);
@ -805,7 +809,6 @@ static int do_send_query(struct st_connection *cn, const char *q, int q_len)
return 0;
}
static int do_read_query_result(struct st_connection *cn)
{
DBUG_ASSERT(cn->tid);
@ -844,7 +847,6 @@ static void init_connection_thd(struct st_connection *cn)
die("Error in the thread library");
}
#else /*EMBEDDED_LIBRARY*/
#define do_send_query(cn,q,q_len) mysql_send_query(&cn->mysql, q, q_len)
@ -2267,8 +2269,14 @@ void var_query_set(VAR *var, const char *query, const char** query_end)
DBUG_ENTER("var_query_set");
LINT_INIT(res);
/* Only white space or ) allowed past ending ` */
while (end > query && *end != '`')
{
if (*end && (*end != ' ' && *end != '\t' && *end != '\n' && *end != ')'))
die("Spurious text after `query` expression");
--end;
}
if (query == end)
die("Syntax error in query, missing '`'");
++query;
@ -3982,7 +3990,18 @@ void do_perl(struct st_command *command)
if (!error)
my_delete(temp_file_path, MYF(0));
handle_command_error(command, WEXITSTATUS(error));
/* Check for error code that indicates perl could not be started */
int exstat= WEXITSTATUS(error);
#ifdef __WIN__
if (exstat == 1)
/* Text must begin 'perl not found' as mtr looks for it */
abort_not_supported_test("perl not found in path or did not start");
#else
if (exstat == 127)
abort_not_supported_test("perl not found in path");
#endif
else
handle_command_error(command, exstat);
}
dynstr_free(&ds_delimiter);
DBUG_VOID_RETURN;
@ -4896,6 +4915,16 @@ void select_connection_name(const char *name)
set_current_connection(con);
/* Connection logging if enabled */
if (!disable_connect_log && !disable_query_log)
{
DYNAMIC_STRING *ds= &ds_res;
dynstr_append_mem(ds, "connection ", 11);
replace_dynstr_append(ds, name);
dynstr_append_mem(ds, ";\n", 2);
}
DBUG_VOID_RETURN;
}
@ -4983,6 +5012,16 @@ void do_close_connection(struct st_command *command)
var_set_string("$CURRENT_CONNECTION", con->name);
}
/* Connection logging if enabled */
if (!disable_connect_log && !disable_query_log)
{
DYNAMIC_STRING *ds= &ds_res;
dynstr_append_mem(ds, "disconnect ", 11);
replace_dynstr_append(ds, ds_connection.str);
dynstr_append_mem(ds, ";\n", 2);
}
DBUG_VOID_RETURN;
}
@ -5117,6 +5156,13 @@ int connect_n_handle_errors(struct st_command *command,
dynstr_append_mem(ds, delimiter, delimiter_length);
dynstr_append_mem(ds, "\n", 1);
}
/* Simlified logging if enabled */
if (!disable_connect_log && !disable_query_log)
{
replace_dynstr_append(ds, command->query);
dynstr_append_mem(ds, ";\n", 2);
}
while (!mysql_real_connect(con, host, user, pass, db, port, sock ? sock: 0,
CLIENT_MULTI_STATEMENTS))
{
@ -7434,11 +7480,13 @@ void run_query(struct st_connection *cn, struct st_command *command, int flags)
(flags & QUERY_REAP_FLAG));
DBUG_ENTER("run_query");
init_dynamic_string(&ds_warnings, NULL, 0, 256);
if (cn->pending && (flags & QUERY_SEND_FLAG))
die ("Cannot run query on connection between send and reap");
if (!(flags & QUERY_SEND_FLAG) && !cn->pending)
die ("Cannot reap on a connection without pending send");
init_dynamic_string(&ds_warnings, NULL, 0, 256);
/*
Evaluate query if this is an eval command
*/
@ -8183,6 +8231,8 @@ int main(int argc, char **argv)
case Q_DISABLE_ABORT_ON_ERROR: abort_on_error=0; break;
case Q_ENABLE_RESULT_LOG: disable_result_log=0; break;
case Q_DISABLE_RESULT_LOG: disable_result_log=1; break;
case Q_ENABLE_CONNECT_LOG: disable_connect_log=0; break;
case Q_DISABLE_CONNECT_LOG: disable_connect_log=1; break;
case Q_ENABLE_WARNINGS: disable_warnings=0; break;
case Q_DISABLE_WARNINGS: disable_warnings=1; break;
case Q_ENABLE_INFO: disable_info=0; break;

View file

@ -14,7 +14,8 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
This is the header file for code which implements the Secure
@ -28,6 +29,38 @@
Please read the file sha1.c for more information.
Modified 2002 by Peter Zaitsev to better follow MySQL standards
Original Source from: http://www.faqs.org/rfcs/rfc3174.html
Copyright (C) The Internet Society (2001). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
*/

View file

@ -2,5 +2,4 @@ perl mysql-test-run.pl --timer --force --parallel=auto --experimental=collection
perl mysql-test-run.pl --timer --force --parallel=auto --experimental=collections/default.experimental --comment=ps_row --vardir=var-ps_row --ps-protocol --mysqld=--binlog-format=row
perl mysql-test-run.pl --timer --force --parallel=auto --experimental=collections/default.experimental --comment=embedded --vardir=var-emebbed --embedded
perl mysql-test-run.pl --timer --force --parallel=auto --experimental=collections/default.experimental --comment=funcs_1 --vardir=var-funcs_1 --suite=funcs_1
perl mysql-test-run.pl --timer --force --parallel=auto --comment=rpl_ndb_row --vardir=var-rpl_ndb_row --mysqld=--binlog-format=row --suite=rpl_ndb,ndb
perl mysql-test-run.pl --timer --force --parallel=auto --experimental=collections/default.experimental --comment=rpl_binlog_row --vardir=var-rpl_binlog_row --mysqld=--binlog-format=row --suite=rpl,binlog --skip-ndb

View file

@ -92,3 +92,6 @@ parts.partition_mgm_lc1_ndb # joro : NDB tests marked as experiment
parts.partition_mgm_lc2_ndb # joro : NDB tests marked as experimental as agreed with bochklin
parts.partition_syntax_ndb # joro : NDB tests marked as experimental as agreed with bochklin
parts.partition_value_ndb # joro : NDB tests marked as experimental as agreed with bochklin
main.mysqlhotcopy_myisam # horst: due to bug#54129
main.mysqlhotcopy_archive # horst: due to bug#54129
main.type_newdecimal # svoj: due to BUG#38965

View file

@ -926,7 +926,7 @@ sub collect_one_test_case {
{
# Ndb is not supported, skip it
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "No ndbcluster support";
$tinfo->{'comment'}= "No ndbcluster support or ndb tests not enabled";
return $tinfo;
}
elsif ( $::opt_skip_ndbcluster )

View file

@ -126,13 +126,25 @@ my $path_vardir_trace; # unix formatted opt_vardir for trace files
my $opt_tmpdir; # Path to use for tmp/ dir
my $opt_tmpdir_pid;
my $opt_start;
my $opt_start_dirty;
my $opt_start_exit;
my $start_only;
END {
if ( defined $opt_tmpdir_pid and $opt_tmpdir_pid == $$ )
{
if (!$opt_start_exit)
{
# Remove the tempdir this process has created
mtr_verbose("Removing tmpdir '$opt_tmpdir");
mtr_verbose("Removing tmpdir $opt_tmpdir");
rmtree($opt_tmpdir);
}
else
{
mtr_warning("tmpdir $opt_tmpdir should be removed after the server has finished");
}
}
}
sub env_or_val($$) { defined $ENV{$_[0]} ? $ENV{$_[0]} : $_[1] }
@ -234,10 +246,6 @@ my $opt_start_timeout = $ENV{MTR_START_TIMEOUT} || 180; # seconds
sub suite_timeout { return $opt_suite_timeout * 60; };
sub check_timeout { return $opt_testcase_timeout * 6; };
my $opt_start;
my $opt_start_dirty;
my $opt_start_exit;
my $start_only;
my $opt_wait_all;
my $opt_user_args;
my $opt_repeat= 1;
@ -273,7 +281,8 @@ sub testcase_timeout ($) {
our $opt_warnings= 1;
our $opt_skip_ndbcluster= 0;
our $opt_include_ndbcluster= 0;
our $opt_skip_ndbcluster= 1;
my $exe_ndbd;
my $exe_ndb_mgmd;
@ -869,6 +878,7 @@ sub command_line_setup {
# Control what test suites or cases to run
'force' => \$opt_force,
'with-ndbcluster-only' => \&collect_option,
'include-ndbcluster' => \$opt_include_ndbcluster,
'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
'suite|suites=s' => \$opt_suites,
'skip-rpl' => \&collect_option,
@ -2186,6 +2196,11 @@ sub environment_setup {
# to detect that valgrind is being used from test cases
$ENV{'VALGRIND_TEST'}= $opt_valgrind;
# Add dir of this perl to aid mysqltest in finding perl
my $perldir= dirname($^X);
my $pathsep= ":";
$pathsep= ";" if IS_WINDOWS && ! IS_CYGWIN;
$ENV{'PATH'}= "$ENV{'PATH'}".$pathsep.$perldir;
}
@ -2458,6 +2473,11 @@ sub vs_config_dirs ($$) {
sub check_ndbcluster_support ($) {
my $mysqld_variables= shift;
if ($opt_include_ndbcluster)
{
$opt_skip_ndbcluster= 0;
}
if ($opt_skip_ndbcluster)
{
mtr_report(" - skipping ndbcluster");
@ -3658,6 +3678,9 @@ sub run_testcase ($) {
# Try to get reason from test log file
find_testcase_skipped_reason($tinfo);
mtr_report_test_skipped($tinfo);
# Restart if skipped due to missing perl, it may have had side effects
stop_all_servers($opt_shutdown_timeout)
if ($tinfo->{'comment'} =~ /^perl not found/);
}
elsif ( $res == 65 )
{
@ -5494,7 +5517,8 @@ Options to control what test suites or cases to run
force Continue to run the suite after failure
with-ndbcluster-only Run only tests that include "ndb" in the filename
skip-ndb[cluster] Skip all tests that need cluster
skip-ndb[cluster] Skip all tests that need cluster. Default.
include-ndb[cluster] Enable all tests that need cluster
do-test=PREFIX or REGEX
Run test cases which name are prefixed with PREFIX
or fulfills REGEX

View file

@ -707,10 +707,7 @@ numgeometries(b) IS NULL, numinteriorrings(b) IS NULL, numpoints(b) IS NULL,
area(b) IS NULL, glength(b) IS NULL, srid(b) IS NULL, x(b) IS NULL,
y(b) IS NULL
from t1;
geometryfromtext(b) IS NULL geometryfromwkb(b) IS NULL astext(b) IS NULL aswkb(b) IS NULL geometrytype(b) IS NULL centroid(b) IS NULL envelope(b) IS NULL startpoint(b) IS NULL endpoint(b) IS NULL exteriorring(b) IS NULL pointn(b, 1) IS NULL geometryn(b, 1) IS NULL interiorringn(b, 1) IS NULL multipoint(b) IS NULL isempty(b) IS NULL issimple(b) IS NULL isclosed(b) IS NULL dimension(b) IS NULL numgeometries(b) IS NULL numinteriorrings(b) IS NULL numpoints(b) IS NULL area(b) IS NULL glength(b) IS NULL srid(b) IS NULL x(b) IS NULL y(b) IS NULL
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
ERROR 22007: Illegal non geometric '`test`.`t1`.`b`' value found during parsing
select
within(b, b) IS NULL, contains(b, b) IS NULL, overlaps(b, b) IS NULL,
equals(b, b) IS NULL, disjoint(b, b) IS NULL, touches(b, b) IS NULL,
@ -725,10 +722,7 @@ point(b, b) IS NULL, linestring(b) IS NULL, polygon(b) IS NULL, multipoint(b) IS
multilinestring(b) IS NULL, multipolygon(b) IS NULL,
geometrycollection(b) IS NULL
from t1;
point(b, b) IS NULL linestring(b) IS NULL polygon(b) IS NULL multipoint(b) IS NULL multilinestring(b) IS NULL multipolygon(b) IS NULL geometrycollection(b) IS NULL
0 1 1 1 1 1 1
1 1 1 1 1 1 1
0 1 1 1 1 1 1
ERROR 22007: Illegal non geometric '`test`.`t1`.`b`' value found during parsing
drop table t1;
CREATE TABLE t1(a POINT) ENGINE=MyISAM;
INSERT INTO t1 VALUES (NULL);
@ -1010,53 +1004,9 @@ f5 datetime YES NULL
drop view v1;
drop table t1;
SELECT MultiPoint(12345,'');
MultiPoint(12345,'')
NULL
SELECT MultiPoint(123451,'');
MultiPoint(123451,'')
NULL
SELECT MultiPoint(1234512,'');
MultiPoint(1234512,'')
NULL
SELECT MultiPoint(12345123,'');
MultiPoint(12345123,'')
NULL
SELECT MultiLineString(12345,'');
MultiLineString(12345,'')
NULL
SELECT MultiLineString(123451,'');
MultiLineString(123451,'')
NULL
SELECT MultiLineString(1234512,'');
MultiLineString(1234512,'')
NULL
SELECT MultiLineString(12345123,'');
MultiLineString(12345123,'')
NULL
SELECT LineString(12345,'');
LineString(12345,'')
NULL
SELECT LineString(123451,'');
LineString(123451,'')
NULL
SELECT LineString(1234512,'');
LineString(1234512,'')
NULL
SELECT LineString(12345123,'');
LineString(12345123,'')
NULL
SELECT Polygon(12345,'');
Polygon(12345,'')
NULL
SELECT Polygon(123451,'');
Polygon(123451,'')
NULL
SELECT Polygon(1234512,'');
Polygon(1234512,'')
NULL
SELECT Polygon(12345123,'');
Polygon(12345123,'')
NULL
ERROR 22007: Illegal non geometric '12345' value found during parsing
SELECT 1 FROM (SELECT GREATEST(1,GEOMETRYCOLLECTION('00000','00000')) b FROM DUAL) AS d WHERE (LINESTRING(d.b));
ERROR 22007: Illegal non geometric ''00000'' value found during parsing
#
# BUG#51875: crash when loading data into geometry function polyfromwkb
#

View file

@ -1185,4 +1185,40 @@ NULL
NULL
1
DROP TABLE t1, t2, mm1;
#
# Bug #54468: crash after item's print() function when ordering/grouping
# by subquery
#
CREATE TABLE t1(a INT, b INT);
INSERT INTO t1 VALUES (), ();
SELECT 1 FROM t1
GROUP BY
GREATEST(t1.a,
(SELECT 1 FROM
(SELECT t1.b FROM t1,t1 t2
ORDER BY t1.a, t1.a LIMIT 1) AS d)
);
1
1
DROP TABLE t1;
#
# Bug #53544: Server hangs during JOIN query in stored procedure called
# twice in a row
#
CREATE TABLE t1(c INT);
INSERT INTO t1 VALUES (1), (2);
PREPARE stmt FROM "SELECT t2.c AS f1 FROM t1 LEFT JOIN
t1 t2 ON t1.c=t2.c RIGHT JOIN
t1 t3 ON t1.c=t3.c
GROUP BY f1;";
EXECUTE stmt;
f1
1
2
EXECUTE stmt;
f1
1
2
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
End of 5.1 tests

View file

@ -177,6 +177,9 @@ mysqltest: At line 1: End of line junk detected: "disconnect default # comment
"
mysqltest: At line 1: Extra delimiter ";" found
mysqltest: At line 1: Extra delimiter ";" found
mysqltest: At line 1: Spurious text after `query` expression
mysqltest: At line 1: Spurious text after `query` expression
mysqltest: At line 2: Spurious text after `query` expression
mysqltest: At line 1: Missing argument(s) to 'error'
mysqltest: At line 1: Missing argument(s) to 'error'
mysqltest: At line 1: The sqlstate definition must start with an uppercase S
@ -449,12 +452,16 @@ mysqltest: At line 1: Missing required argument 'host' to command 'connect'
mysqltest: At line 1: query 'connect con2,localhost,root,,illegal_db' failed: 1049: Unknown database 'illegal_db'
mysqltest: At line 1: Illegal argument for port: 'illegal_port'
mysqltest: At line 1: Illegal option to connect: SMTP
OK
mysqltest: The test didn't produce any output
200 connects succeeded
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/mysqltest.sql": At line 3: connection 'test_con1' not found in connection pool
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/mysqltest.sql": At line 2: Connection test_con1 already exists
show tables;
ERROR 3D000: No database selected
connect con1,localhost,root,,;
connection default;
connection con1;
disconnect con1;
connection default;
Output from mysqltest-x.inc
Output from mysqltest-x.inc
Output from mysqltest-x.inc

View file

@ -1,5 +1,20 @@
drop table if exists t1, t2;
#
# Bug#57113: ha_partition::extra(ha_extra_function):
# Assertion `m_extra_cache' failed
CREATE TABLE t1
(id INT NOT NULL PRIMARY KEY,
name VARCHAR(16) NOT NULL,
year YEAR,
INDEX name (name(8))
)
PARTITION BY HASH(id) PARTITIONS 2;
INSERT INTO t1 VALUES ( 1, 'FooBar', '1924' );
CREATE TABLE t2 (id INT);
INSERT INTO t2 VALUES (1),(2);
UPDATE t1, t2 SET t1.year = '1955' WHERE t1.name = 'FooBar';
DROP TABLE t1, t2;
#
# Bug#55458: Partitioned MyISAM table gets crashed by multi-table update
#
CREATE TABLE t1 (

View file

@ -1075,4 +1075,14 @@ PARTITION p VALUES LESS THAN (1219089600),
PARTITION pmax VALUES LESS THAN MAXVALUE);
ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed
DROP TABLE old;
#
# Bug #56709: Memory leaks at running the 5.1 test suite
#
CREATE TABLE t1 (a TIMESTAMP NOT NULL PRIMARY KEY);
ALTER TABLE t1
PARTITION BY RANGE (EXTRACT(DAY FROM a)) (
PARTITION p VALUES LESS THAN (18),
PARTITION pmax VALUES LESS THAN MAXVALUE);
ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed
DROP TABLE t1;
End of 5.1 tests

View file

@ -3005,7 +3005,44 @@ EXECUTE stmt;
1
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
#
# Bug#54494 crash with explain extended and prepared statements
#
CREATE TABLE t1(a INT);
INSERT INTO t1 VALUES (1),(2);
PREPARE stmt FROM 'EXPLAIN EXTENDED SELECT 1 FROM t1 RIGHT JOIN t1 t2 ON 1';
EXECUTE stmt;
id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00
1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select 1 AS `1` from `test`.`t1` `t2` left join `test`.`t1` on(1) where 1
EXECUTE stmt;
id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 2 100.00
1 SIMPLE t1 ALL NULL NULL NULL NULL 2 100.00
Warnings:
Note 1003 select 1 AS `1` from `test`.`t1` `t2` left join `test`.`t1` on(1) where 1
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
#
# Bug#54488 crash when using explain and prepared statements with subqueries
#
CREATE TABLE t1(f1 INT);
INSERT INTO t1 VALUES (1),(1);
PREPARE stmt FROM 'EXPLAIN SELECT 1 FROM t1 WHERE (SELECT (SELECT 1 FROM t1 GROUP BY f1))';
EXECUTE stmt;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 2
2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
3 SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
EXECUTE stmt;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 ALL NULL NULL NULL NULL 2
2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL No tables used
3 SUBQUERY t1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
End of 5.1 tests.
#

View file

@ -1929,26 +1929,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -1976,26 +1976,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -2026,26 +2026,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2066,26 +2066,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -2114,26 +2114,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2158,26 +2158,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2204,26 +2204,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2242,26 +2242,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;

View file

@ -1912,26 +1912,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -1959,26 +1959,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -2009,26 +2009,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2049,26 +2049,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -2097,26 +2097,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2141,26 +2141,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2187,26 +2187,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2225,26 +2225,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;

View file

@ -1913,26 +1913,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 0 31 8
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 0 31 8
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 0 31 8
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 0 31 8
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 0 31 8
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 0 31 8
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 0 31 8
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 0 31 8
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -1960,26 +1960,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 0 31 8
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 0 31 8
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 0 31 8
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 0 31 8
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 0 31 8
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 0 31 8
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 0 31 8
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 0 31 8
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -2010,26 +2010,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 0 31 8
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 0 31 8
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 0 31 8
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 0 31 8
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 0 31 8
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 0 31 8
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 0 31 8
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 0 31 8
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2050,26 +2050,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 0 31 8
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 0 31 8
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 0 31 8
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 0 31 8
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 0 31 8
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 0 31 8
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 0 31 8
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 0 31 8
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -2098,26 +2098,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 0 31 8
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 0 31 8
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 0 31 8
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 0 31 8
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 0 31 8
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 0 31 8
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 0 31 8
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 0 31 8
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2142,26 +2142,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 0 31 8
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 0 31 8
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 0 31 8
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 0 31 8
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 0 31 8
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 0 31 8
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 0 31 8
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 0 31 8
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2188,26 +2188,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 0 31 8
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 0 31 8
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 0 31 8
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 0 31 8
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 0 31 8
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 0 31 8
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 0 31 8
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 0 31 8
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2226,26 +2226,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 0 31 8
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 0 31 8
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 0 31 8
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 0 31 8
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 0 31 8
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 0 31 8
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 0 31 8
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 0 31 8
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;

View file

@ -1849,26 +1849,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -1896,26 +1896,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -1946,26 +1946,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -1986,26 +1986,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -2034,26 +2034,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2078,26 +2078,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2124,26 +2124,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2162,26 +2162,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;
@ -4871,26 +4871,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -4918,26 +4918,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -4968,26 +4968,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -5008,26 +5008,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -5056,26 +5056,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -5100,26 +5100,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -5146,26 +5146,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 250 16777215 10 Y 0 31 8
def @arg14 250 16777215 19 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -5184,26 +5184,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 250 16777215 0 Y 0 31 8
def @arg14 250 16777215 0 Y 0 31 8
def @arg15 250 16777215 19 Y 0 31 8
def @arg16 250 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;

View file

@ -296,4 +296,16 @@ CONVERT_TZ(NOW(), 'UTC', 'Europe/Moscow') IS NULL
UPDATE t1 SET t = CONVERT_TZ(t, 'UTC', 'Europe/Moscow');
UNLOCK TABLES;
DROP TABLE t1;
#
# Bug #55424: convert_tz crashes when fed invalid data
#
CREATE TABLE t1 (a SET('x') NOT NULL);
INSERT INTO t1 VALUES ('');
SELECT CONVERT_TZ(1, a, 1) FROM t1;
CONVERT_TZ(1, a, 1)
NULL
SELECT CONVERT_TZ(1, 1, a) FROM t1;
CONVERT_TZ(1, 1, a)
NULL
DROP TABLE t1;
End of 5.1 tests

View file

@ -428,6 +428,23 @@ CREATE TRIGGER t_after_insert AFTER INSERT ON t1 FOR EACH ROW SET @bug42188 = 10
INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
CREATE TABLE t1(a INT);
INSERT INTO t1 VALUES (0),(0);
# BUG#55615 : should not crash
SELECT (@a:=(SELECT @a:=1 FROM t1 LIMIT 1)) AND COUNT(1) FROM t1 GROUP BY @a;
(@a:=(SELECT @a:=1 FROM t1 LIMIT 1)) AND COUNT(1)
1
1
# BUG#55564 : should not crash
SELECT IF(
@v:=LEAST((SELECT 1 FROM t1 t2 LEFT JOIN t1 ON (@v) GROUP BY t1.a), a),
count(*), 1)
FROM t1 GROUP BY a LIMIT 1;
IF(
@v:=LEAST((SELECT 1 FROM t1 t2 LEFT JOIN t1 ON (@v) GROUP BY t1.a), a),
count(*), 1)
1
DROP TABLE t1;
End of 5.1 tests
DROP TABLE IF EXISTS t1;
CREATE TABLE t1(f1 INT AUTO_INCREMENT, PRIMARY KEY(f1));

View file

@ -31,4 +31,17 @@ SELECT @@global.debug;
@@global.debug
SET GLOBAL debug=@old_debug;
#
# Bug #56709: Memory leaks at running the 5.1 test suite
#
SET @old_local_debug = @@debug;
SET @@debug='d,foo';
SELECT @@debug;
@@debug
d,foo
SET @@debug='';
SELECT @@debug;
@@debug
SET @@debug = @old_local_debug;
End of 5.1 tests

View file

@ -1244,3 +1244,16 @@ t1 CREATE TABLE `t1` (
PRIMARY KEY (`c1`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
DROP TABLE t1;
DROP TABLE IF EXISTS t1;
Warnings:
Note 1051 Unknown table 't1'
CREATE TABLE t1(c1 BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (NULL);
INSERT INTO t1 VALUES (18446744073709551615);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`c1`)
) ENGINE=InnoDB AUTO_INCREMENT=18446744073709551615 DEFAULT CHARSET=latin1
DROP TABLE t1;

View file

@ -0,0 +1,4 @@
CREATE TABLE bug56716 (a INT PRIMARY KEY,b INT,c INT,INDEX(b)) ENGINE=InnoDB;
SELECT * FROM bug56716 WHERE b<=42 ORDER BY b DESC FOR UPDATE;
a b c
DROP TABLE bug56716;

View file

@ -0,0 +1,10 @@
create table A(id int not null primary key) engine=innodb;
create table B(id int not null auto_increment primary key, f1 int not null, foreign key(f1) references A(id) on delete cascade) engine=innodb;
create table C(id int not null auto_increment primary key, f1 int not null, foreign key(f1) references B(id) on delete cascade) engine=innodb;
insert into A values(1), (2);
DELETE FROM A where id = 1;
DELETE FROM C where f1 = 2;
DELETE FROM A where id = 1;
DROP TABLE C;
DROP TABLE B;
DROP TABLE A;

View file

@ -2550,6 +2550,40 @@ ALTER TABLE t1 COMMENT 'test';
UNLOCK TABLES;
DROP TABLE t1;
#
# Bug#55826: create table .. select crashes with when KILL_BAD_DATA
# is returned
#
CREATE TABLE t1(a INT) ENGINE=innodb;
INSERT INTO t1 VALUES (0);
SET SQL_MODE='STRICT_ALL_TABLES';
CREATE TABLE t2
SELECT LEAST((SELECT '' FROM t1),NOW()) FROM `t1`;
ERROR 22007: Incorrect datetime value: '' for column 'NOW()' at row 1
DROP TABLE t1;
SET SQL_MODE=DEFAULT;
#
# Bug#55580: segfault in read_view_sees_trx_id
#
CREATE TABLE t1 (a INT) ENGINE=Innodb;
CREATE TABLE t2 (a INT) ENGINE=Innodb;
INSERT INTO t1 VALUES (1),(2);
INSERT INTO t2 VALUES (1),(2);
START TRANSACTION;
SELECT * FROM t2 LOCK IN SHARE MODE;
a
1
2
START TRANSACTION;
SELECT * FROM t1 LOCK IN SHARE MODE;
a
1
2
SELECT * FROM t1 FOR UPDATE;
# should not crash
SELECT * FROM t1 GROUP BY (SELECT a FROM t2 LIMIT 1 FOR UPDATE) + t1.a;
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
DROP TABLE t1,t2;
#
# Bug#55656: mysqldump can be slower after bug #39653 fix
#
CREATE TABLE t1 (a INT , b INT, c INT, d INT,

View file

@ -665,6 +665,19 @@ SELECT * FROM t1;
SHOW CREATE TABLE t1;
DROP TABLE t1;
DROP TABLE IF EXISTS t1;
Warnings:
Note 1051 Unknown table 't1'
CREATE TABLE t1(c1 BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (NULL);
INSERT INTO t1 VALUES (18446744073709551615);
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`c1` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`c1`)
) ENGINE=InnoDB AUTO_INCREMENT=18446744073709551615 DEFAULT CHARSET=latin1
DROP TABLE t1;
#
# restore environment to the state it was before this test execution

View file

@ -0,0 +1,10 @@
#
# Bug #56716 InnoDB locks a record gap without locking the table
#
-- source include/have_innodb.inc
CREATE TABLE bug56716 (a INT PRIMARY KEY,b INT,c INT,INDEX(b)) ENGINE=InnoDB;
SELECT * FROM bug56716 WHERE b<=42 ORDER BY b DESC FOR UPDATE;
DROP TABLE bug56716;

View file

@ -0,0 +1,36 @@
# Test Bug #57255. Cascade deletes that affect different rows should not
# result in DB_FOREIGN_EXCEED_MAX_CASCADE error
--source include/have_innodb.inc
create table A(id int not null primary key) engine=innodb;
create table B(id int not null auto_increment primary key, f1 int not null, foreign key(f1) references A(id) on delete cascade) engine=innodb;
create table C(id int not null auto_increment primary key, f1 int not null, foreign key(f1) references B(id) on delete cascade) engine=innodb;
insert into A values(1), (2);
--disable_query_log
let $i=257;
while ($i)
{
insert into B(f1) values(1);
dec $i;
}
let $i=486;
while ($i)
{
insert into C(f1) values(2);
dec $i;
}
--enable_query_log
# Following Deletes should not report error
DELETE FROM A where id = 1;
DELETE FROM C where f1 = 2;
DELETE FROM A where id = 1;
DROP TABLE C;
DROP TABLE B;
DROP TABLE A;

View file

@ -746,6 +746,59 @@ UNLOCK TABLES;
DROP TABLE t1;
--echo #
--echo # Bug#55826: create table .. select crashes with when KILL_BAD_DATA
--echo # is returned
--echo #
CREATE TABLE t1(a INT) ENGINE=innodb;
INSERT INTO t1 VALUES (0);
SET SQL_MODE='STRICT_ALL_TABLES';
--error ER_TRUNCATED_WRONG_VALUE
CREATE TABLE t2
SELECT LEAST((SELECT '' FROM t1),NOW()) FROM `t1`;
DROP TABLE t1;
SET SQL_MODE=DEFAULT;
--echo #
--echo # Bug#55580: segfault in read_view_sees_trx_id
--echo #
CREATE TABLE t1 (a INT) ENGINE=Innodb;
CREATE TABLE t2 (a INT) ENGINE=Innodb;
INSERT INTO t1 VALUES (1),(2);
INSERT INTO t2 VALUES (1),(2);
connect (con1,localhost,root,,test);
connect (con2,localhost,root,,test);
connection con1;
START TRANSACTION;
SELECT * FROM t2 LOCK IN SHARE MODE;
connection con2;
START TRANSACTION;
SELECT * FROM t1 LOCK IN SHARE MODE;
connection con1;
let $conn_id= `SELECT CONNECTION_ID()`;
--send SELECT * FROM t1 FOR UPDATE
connection con2;
let $wait_timeout= 2;
let $wait_condition= SELECT 1 FROM INFORMATION_SCHEMA.PROCESSLIST
WHERE ID=$conn_id AND STATE='Sending data';
--source include/wait_condition.inc
--echo # should not crash
--error ER_LOCK_DEADLOCK
SELECT * FROM t1 GROUP BY (SELECT a FROM t2 LIMIT 1 FOR UPDATE) + t1.a;
connection default;
disconnect con1;
disconnect con2;
DROP TABLE t1,t2;
--echo #
--echo # Bug#55656: mysqldump can be slower after bug #39653 fix
--echo #

View file

@ -1912,26 +1912,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 50 16777215 10 Y 0 31 8
def @arg14 50 16777215 19 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select @arg01:= c1, @arg02:= c2, @arg03:= c3, @arg04:= c4,
@ -1959,26 +1959,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 50 16777215 0 Y 0 31 8
def @arg14 50 16777215 0 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select
@ -2009,26 +2009,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 50 16777215 10 Y 0 31 8
def @arg14 50 16777215 19 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2049,26 +2049,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 50 16777215 0 Y 0 31 8
def @arg14 50 16777215 0 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select ? := c1 from t9 where c1= 1" ;
@ -2097,26 +2097,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 50 16777215 10 Y 0 31 8
def @arg14 50 16777215 19 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2141,26 +2141,26 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg13 50 16777215 0 Y 0 31 8
def @arg14 50 16777215 0 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12,
@ -2187,26 +2187,26 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
def @arg13 251 16777216 10 Y 0 31 8
def @arg14 251 16777216 19 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 8 Y 0 31 8
def @arg13 50 16777215 10 Y 0 31 8
def @arg14 50 16777215 19 Y 0 31 8
def @arg15 50 16777215 19 Y 0 31 8
def @arg16 50 16777215 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
def @arg20 251 16777216 1 Y 0 31 8
def @arg21 251 16777216 10 Y 0 31 8
def @arg22 251 16777216 30 Y 0 31 8
def @arg23 251 16777216 8 Y 128 31 63
def @arg24 251 16777216 8 Y 0 31 8
def @arg25 251 16777216 4 Y 128 31 63
def @arg26 251 16777216 4 Y 0 31 8
def @arg27 251 16777216 10 Y 128 31 63
def @arg28 251 16777216 10 Y 0 31 8
def @arg29 251 16777216 8 Y 128 31 63
def @arg30 251 16777216 8 Y 0 31 8
def @arg31 251 16777216 3 Y 0 31 8
def @arg32 251 16777216 6 Y 0 31 8
def @arg20 250 16777215 1 Y 0 31 8
def @arg21 250 16777215 10 Y 0 31 8
def @arg22 250 16777215 30 Y 0 31 8
def @arg23 250 16777215 8 Y 128 31 63
def @arg24 250 16777215 8 Y 0 31 8
def @arg25 250 16777215 4 Y 128 31 63
def @arg26 250 16777215 4 Y 0 31 8
def @arg27 250 16777215 10 Y 128 31 63
def @arg28 250 16777215 10 Y 0 31 8
def @arg29 250 16777215 8 Y 128 31 63
def @arg30 250 16777215 8 Y 0 31 8
def @arg31 250 16777215 3 Y 0 31 8
def @arg32 250 16777215 6 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
1 1 1 1 1 1 1 1 1 1 1.0000 1.0000 2004-02-29 2004-02-29 11:11:11 2004-02-29 11:11:11 11:11:11 2004 1 1 a 123456789a 123456789a123456789b123456789c tinyblob tinytext blob text mediumblob mediumtext longblob longtext one monday
set @my_key= 0 ;
@ -2223,28 +2223,22 @@ def @arg07 5 23 0 Y 32896 31 63
def @arg08 5 23 0 Y 32896 31 63
def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
def @arg13 251 16777216 0 Y 0 31 8
def @arg14 251 16777216 0 Y 0 31 8
def @arg15 251 16777216 19 Y 0 31 8
def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
def @arg20 251 16777216 0 Y 0 31 8
def @arg21 251 16777216 0 Y 0 31 8
def @arg22 251 16777216 0 Y 0 31 8
def @arg23 251 16777216 0 Y 128 31 63
def @arg24 251 16777216 0 Y 0 31 8
def @arg25 251 16777216 0 Y 128 31 63
def @arg26 251 16777216 0 Y 0 31 8
def @arg27 251 16777216 0 Y 128 31 63
def @arg28 251 16777216 0 Y 0 31 8
def @arg29 251 16777216 0 Y 128 31 63
def @arg30 251 16777216 0 Y 0 31 8
def @arg31 251 16777216 0 Y 0 31 8
def @arg32 251 16777216 0 Y 0 31 8
def @arg20 250 16777215 0 Y 0 31 8
def @arg21 250 16777215 0 Y 0 31 8
def @arg22 250 16777215 0 Y 0 31 8
def @arg23 250 16777215 0 Y 128 31 63
def @arg24 250 16777215 0 Y 0 31 8
def @arg25 250 16777215 0 Y 128 31 63
def @arg26 250 16777215 0 Y 0 31 8
def @arg27 250 16777215 0 Y 128 31 63
def @arg28 250 16777215 0 Y 0 31 8
def @arg29 250 16777215 0 Y 128 31 63
def @arg30 250 16777215 0 Y 0 31 8
def @arg31 250 16777215 0 Y 0 31 8
def @arg32 250 16777215 0 Y 0 31 8
@arg01 @arg02 @arg03 @arg04 @arg05 @arg06 @arg07 @arg08 @arg09 @arg10 @arg11 @arg12 @arg13 @arg14 @arg15 @arg16 @arg17 @arg18 @arg19 @arg20 @arg21 @arg22 @arg23 @arg24 @arg25 @arg26 @arg27 @arg28 @arg29 @arg30 @arg31 @arg32
0 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1991-01-01 01:01:01 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL
prepare stmt1 from "select c1 into ? from t9 where c1= 1" ;

View file

@ -14,3 +14,4 @@ rpl_failed_optimize : WL#4284: Can't optimize table used by a pending tran
rpl_read_only : WL#4284: Setting Read only won't succeed until all metadata locks are released.
rpl_row_create_table : Bug#51574 2010-02-27 andrei failed different way than earlier with bug#45576
rpl_spec_variables : BUG#47661 2009-10-27 jasonh rpl_spec_variables fails on PB2 hpux
rpl_log_pos : BUG#55675 Sep 10 2010 27 2010 alfranio rpl.rpl_log_pos fails sporadically with error binlog truncated in the middle

View file

@ -205,7 +205,7 @@ DROP TABLE `t1`;
-- echo === Using mysqlbinlog to detect failure. Before the patch mysqlbinlog would find a corrupted event, thence would fail.
-- let $MYSQLD_DATADIR= `SELECT @@datadir`;
-- let $MYSQLD_DATADIR= `SELECT @@datadir`
-- exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug42749.binlog
-- remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug42749.binlog
@ -330,7 +330,7 @@ while($ntables)
-- echo ### assertion: check that binlog is not corrupt. Using mysqlbinlog to
-- echo ### detect failure. Before the patch mysqlbinlog would find
-- echo ### a corrupted event, thence would fail.
-- let $MYSQLD_DATADIR= `SELECT @@datadir`;
-- let $MYSQLD_DATADIR= `SELECT @@datadir`
-- exec $MYSQL_BINLOG -v --hex $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug50018.binlog
## clean up

View file

@ -19,7 +19,7 @@
# #
################################################################################
let $save_div_precision_increment = `SELECT @@global.div_precision_increment`
let $save_div_precision_increment = `SELECT @@global.div_precision_increment`;
#SET @save_div_precision_increment = @@global.div_precision_increment;

View file

@ -9,7 +9,7 @@ SHOW VARIABLES LIKE 'secure_file_priv';
# Doing this in a portable manner is difficult but we should be able to
# count on the depth of the directory hierarchy used. Three steps up from
# the datadir is the 'mysql_test' directory.
--let $PROTECTED_FILE=`SELECT concat(@@datadir,'/../../../bug50373.txt')`;
--let $PROTECTED_FILE=`SELECT concat(@@datadir,'/../../../bug50373.txt')`
--eval SELECT * FROM t1 INTO OUTFILE '$PROTECTED_FILE';
DELETE FROM t1;
--eval LOAD DATA INFILE '$PROTECTED_FILE' INTO TABLE t1;

View file

@ -404,6 +404,7 @@ create table t1 (a int, b blob);
insert into t1 values (1, ''), (2, NULL), (3, '1');
select * from t1;
--error ER_ILLEGAL_VALUE_FOR_TYPE
select
geometryfromtext(b) IS NULL, geometryfromwkb(b) IS NULL, astext(b) IS NULL,
aswkb(b) IS NULL, geometrytype(b) IS NULL, centroid(b) IS NULL,
@ -422,6 +423,7 @@ select
intersects(b, b) IS NULL, crosses(b, b) IS NULL
from t1;
--error ER_ILLEGAL_VALUE_FOR_TYPE
select
point(b, b) IS NULL, linestring(b) IS NULL, polygon(b) IS NULL, multipoint(b) IS NULL,
multilinestring(b) IS NULL, multipolygon(b) IS NULL,
@ -705,25 +707,35 @@ drop table t1;
# Bug#44684: valgrind reports invalid reads in
# Item_func_spatial_collection::val_str
#
--error ER_ILLEGAL_VALUE_FOR_TYPE
SELECT MultiPoint(12345,'');
SELECT MultiPoint(123451,'');
SELECT MultiPoint(1234512,'');
SELECT MultiPoint(12345123,'');
#SELECT MultiPoint(123451,'');
#SELECT MultiPoint(1234512,'');
#SELECT MultiPoint(12345123,'');
SELECT MultiLineString(12345,'');
SELECT MultiLineString(123451,'');
SELECT MultiLineString(1234512,'');
SELECT MultiLineString(12345123,'');
--error ER_ILLEGAL_VALUE_FOR_TYPE
#SELECT MultiLineString(12345,'');
#SELECT MultiLineString(123451,'');
#SELECT MultiLineString(1234512,'');
#SELECT MultiLineString(12345123,'');
SELECT LineString(12345,'');
SELECT LineString(123451,'');
SELECT LineString(1234512,'');
SELECT LineString(12345123,'');
--error ER_ILLEGAL_VALUE_FOR_TYPE
#SELECT LineString(12345,'');
#SELECT LineString(123451,'');
#SELECT LineString(1234512,'');
#SELECT LineString(12345123,'');
SELECT Polygon(12345,'');
SELECT Polygon(123451,'');
SELECT Polygon(1234512,'');
SELECT Polygon(12345123,'');
--error ER_ILLEGAL_VALUE_FOR_TYPE
#SELECT Polygon(12345,'');
#SELECT Polygon(123451,'');
#SELECT Polygon(1234512,'');
#SELECT Polygon(12345123,'');
#
# Bug55531 crash with conversions of geometry types / strings
#
--error ER_ILLEGAL_VALUE_FOR_TYPE
SELECT 1 FROM (SELECT GREATEST(1,GEOMETRYCOLLECTION('00000','00000')) b FROM DUAL) AS d WHERE (LINESTRING(d.b));
--echo #

View file

@ -851,4 +851,74 @@ ENGINE=MERGE UNION=(t1,t2);
SELECT t1.a FROM mm1,t1;
DROP TABLE t1, t2, mm1;
#--echo #
#--echo # Bug #55568: user variable assignments crash server when used within
#--echo # query
#--echo #
#
#
# This test case is invalidated because of fix of bug 55531
# The reason is that {1} is not a valid geometric collection.
#
#CREATE TABLE t1 (a INT);
#INSERT INTO t1 VALUES (0), (1);
#let $i=2;
#while ($i)
#{
# SELECT MULTIPOINT(
# 1,
# (
# SELECT MULTIPOINT(
# MULTIPOINT(
# 1,
# (SELECT COUNT(*) FROM (SELECT 1 FROM t1 GROUP BY a,a) d)
# )
# ) FROM t1
# )
# ) != COUNT(*) q FROM t1 GROUP BY a;
# dec $i;
#}
#
#DROP TABLE t1;
--echo #
--echo # Bug #54468: crash after item's print() function when ordering/grouping
--echo # by subquery
--echo #
CREATE TABLE t1(a INT, b INT);
INSERT INTO t1 VALUES (), ();
SELECT 1 FROM t1
GROUP BY
GREATEST(t1.a,
(SELECT 1 FROM
(SELECT t1.b FROM t1,t1 t2
ORDER BY t1.a, t1.a LIMIT 1) AS d)
);
DROP TABLE t1;
--echo #
--echo # Bug #53544: Server hangs during JOIN query in stored procedure called
--echo # twice in a row
--echo #
CREATE TABLE t1(c INT);
INSERT INTO t1 VALUES (1), (2);
PREPARE stmt FROM "SELECT t2.c AS f1 FROM t1 LEFT JOIN
t1 t2 ON t1.c=t2.c RIGHT JOIN
t1 t3 ON t1.c=t3.c
GROUP BY f1;";
EXECUTE stmt;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
--echo End of 5.1 tests

View file

@ -494,6 +494,32 @@ remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
--error 1
--exec echo "--disable_query_log;" | $MYSQL_TEST 2>&1
#
# Extra text after ``
#
# Cannot use exec echo here as ` may or may not need to be escaped
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
let $x= `select 1` BOO ;
EOF
--error 1
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
--let $x= `select 1`;
EOF
--error 1
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
# Missing ; in next line should be detected and cause failure
let $x= `select 1`
let $x= 2;
echo $x;
EOF
--error 1
--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.sql 2>&1
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
# Allow trailing # comment
--sleep 1 # Wait for insert delayed to be executed.
@ -1439,19 +1465,6 @@ eval select "$long_rep" as x;
--error 1
--exec echo "connect (con1,localhost,root,,,,,SMTP POP);" | $MYSQL_TEST 2>&1
# Repeat connect/disconnect
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
let $i=100;
while ($i)
{
connect (test_con1,localhost,root,,);
disconnect test_con1;
dec $i;
}
EOF
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql; echo OK; exit;" | $MYSQL_TEST 2>&1
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
# Repeat connect/disconnect
--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql
let $i=200;
@ -1461,9 +1474,8 @@ while ($i)
disconnect test_con1;
dec $i;
}
echo 200 connects succeeded;
EOF
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--error 1
--exec echo "source $MYSQLTEST_VARDIR/tmp/mysqltest.sql;" | $MYSQL_TEST 2>&1
remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.sql;
@ -1504,6 +1516,22 @@ show tables;
disconnect con2;
connection default;
# Test enable_connect_log
--enable_connect_log
connect (con1,localhost,root,,);
connection default;
connection con1;
--disable_query_log
# These should not be logged
connect (con2,localhost,root,,*NO-ONE*);
connection con2;
disconnect con2;
connection con1;
--enable_query_log
disconnect con1;
connection default;
--disable_connect_log
# ----------------------------------------------------------------------------
# Test mysqltest arguments
# ----------------------------------------------------------------------------

View file

@ -14,6 +14,28 @@
drop table if exists t1, t2;
--enable_warnings
--echo #
--echo # Bug#57113: ha_partition::extra(ha_extra_function):
--echo # Assertion `m_extra_cache' failed
CREATE TABLE t1
(id INT NOT NULL PRIMARY KEY,
name VARCHAR(16) NOT NULL,
year YEAR,
INDEX name (name(8))
)
PARTITION BY HASH(id) PARTITIONS 2;
INSERT INTO t1 VALUES ( 1, 'FooBar', '1924' );
CREATE TABLE t2 (id INT);
INSERT INTO t2 VALUES (1),(2);
UPDATE t1, t2 SET t1.year = '1955' WHERE t1.name = 'FooBar';
DROP TABLE t1, t2;
--echo #
--echo # Bug#55458: Partitioned MyISAM table gets crashed by multi-table update
--echo #

View file

@ -8,10 +8,8 @@ DROP TABLE IF EXISTS t1;
--echo #
--echo # Bug#51851: Server with SBR locks mutex twice on LOAD DATA into
--echo # partitioned MyISAM table
perl;
open( INIT, ">init_file.txt");
print INIT "abcd\n";
close( INIT );
--write_file init_file.txt
abcd
EOF
CREATE TABLE t1

View file

@ -1284,4 +1284,18 @@ PARTITION pmax VALUES LESS THAN MAXVALUE);
DROP TABLE old;
--echo #
--echo # Bug #56709: Memory leaks at running the 5.1 test suite
--echo #
CREATE TABLE t1 (a TIMESTAMP NOT NULL PRIMARY KEY);
--error ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR
ALTER TABLE t1
PARTITION BY RANGE (EXTRACT(DAY FROM a)) (
PARTITION p VALUES LESS THAN (18),
PARTITION pmax VALUES LESS THAN MAXVALUE);
DROP TABLE t1;
--echo End of 5.1 tests

View file

@ -3081,7 +3081,28 @@ DROP TABLE t1;
###########################################################################
--echo
--echo #
--echo # Bug#54494 crash with explain extended and prepared statements
--echo #
CREATE TABLE t1(a INT);
INSERT INTO t1 VALUES (1),(2);
PREPARE stmt FROM 'EXPLAIN EXTENDED SELECT 1 FROM t1 RIGHT JOIN t1 t2 ON 1';
EXECUTE stmt;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
--echo #
--echo # Bug#54488 crash when using explain and prepared statements with subqueries
--echo #
CREATE TABLE t1(f1 INT);
INSERT INTO t1 VALUES (1),(1);
PREPARE stmt FROM 'EXPLAIN SELECT 1 FROM t1 WHERE (SELECT (SELECT 1 FROM t1 GROUP BY f1))';
EXECUTE stmt;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
DROP TABLE t1;
--echo End of 5.1 tests.
###########################################################################

View file

@ -273,5 +273,14 @@ UNLOCK TABLES;
DROP TABLE t1;
--echo #
--echo # Bug #55424: convert_tz crashes when fed invalid data
--echo #
CREATE TABLE t1 (a SET('x') NOT NULL);
INSERT INTO t1 VALUES ('');
SELECT CONVERT_TZ(1, a, 1) FROM t1;
SELECT CONVERT_TZ(1, 1, a) FROM t1;
DROP TABLE t1;
--echo End of 5.1 tests

View file

@ -326,6 +326,24 @@ INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
#
# Bug #55615: debug assertion after using variable in assignment and
# referred to
# Bug #55564: crash with user variables, assignments, joins...
#
CREATE TABLE t1(a INT);
INSERT INTO t1 VALUES (0),(0);
--echo # BUG#55615 : should not crash
SELECT (@a:=(SELECT @a:=1 FROM t1 LIMIT 1)) AND COUNT(1) FROM t1 GROUP BY @a;
--echo # BUG#55564 : should not crash
SELECT IF(
@v:=LEAST((SELECT 1 FROM t1 t2 LEFT JOIN t1 ON (@v) GROUP BY t1.a), a),
count(*), 1)
FROM t1 GROUP BY a LIMIT 1;
DROP TABLE t1;
--echo End of 5.1 tests
#

View file

@ -35,4 +35,17 @@ SELECT @@global.debug;
SET GLOBAL debug=@old_debug;
--echo #
--echo # Bug #56709: Memory leaks at running the 5.1 test suite
--echo #
SET @old_local_debug = @@debug;
SET @@debug='d,foo';
SELECT @@debug;
SET @@debug='';
SELECT @@debug;
SET @@debug = @old_local_debug;
--echo End of 5.1 tests

View file

@ -1,4 +1,4 @@
/* Copyright (C) 2002, 2004, 2006 MySQL AB
/* Copyright (c) 2002, 2004, 2006 MySQL AB
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -11,11 +11,42 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
Original Source from: http://www.faqs.org/rfcs/rfc3174.html
Copyright (C) The Internet Society (2001). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
DESCRIPTION
This file implements the Secure Hashing Algorithm 1 as
defined in FIPS PUB 180-1 published April 17, 1995.

View file

@ -1564,7 +1564,7 @@ void Field::make_field(Send_field *field)
}
else
field->org_table_name= field->db_name= "";
if (orig_table)
if (orig_table && orig_table->alias)
{
field->table_name= orig_table->alias;
field->org_col_name= field_name;

View file

@ -5698,7 +5698,6 @@ int ha_partition::extra(enum ha_extra_function operation)
DBUG_RETURN(prepare_for_rename());
break;
case HA_EXTRA_PREPARE_FOR_UPDATE:
DBUG_ASSERT(m_extra_cache);
/*
Needs to be run on the first partition in the range now, and
later in late_extra_cache, when switching to a new partition to scan.
@ -5706,6 +5705,8 @@ int ha_partition::extra(enum ha_extra_function operation)
m_extra_prepare_for_update= TRUE;
if (m_part_spec.start_part != NO_CURRENT_PART_ID)
{
if (!m_extra_cache)
m_extra_cache_part_id= m_part_spec.start_part;
DBUG_ASSERT(m_extra_cache_part_id == m_part_spec.start_part);
(void) m_file[m_part_spec.start_part]->extra(HA_EXTRA_PREPARE_FOR_UPDATE);
}
@ -5977,16 +5978,20 @@ void ha_partition::late_extra_cache(uint partition_id)
{
handler *file;
DBUG_ENTER("ha_partition::late_extra_cache");
DBUG_PRINT("info", ("extra_cache %u partid %u size %u", m_extra_cache,
DBUG_PRINT("info", ("extra_cache %u prepare %u partid %u size %u",
m_extra_cache, m_extra_prepare_for_update,
partition_id, m_extra_cache_size));
if (!m_extra_cache && !m_extra_prepare_for_update)
DBUG_VOID_RETURN;
file= m_file[partition_id];
if (m_extra_cache)
{
if (m_extra_cache_size == 0)
(void) file->extra(HA_EXTRA_CACHE);
else
(void) file->extra_opt(HA_EXTRA_CACHE, m_extra_cache_size);
}
if (m_extra_prepare_for_update)
{
DBUG_ASSERT(m_extra_cache);

View file

@ -29,7 +29,6 @@ enum partition_keywords
PKW_COLUMNS
};
#define PARTITION_BYTES_IN_POS 2
#define PARTITION_ENABLED_TABLE_FLAGS (HA_FILE_BASED | HA_REC_NOT_IN_SEQ)
#define PARTITION_DISABLED_TABLE_FLAGS (HA_CAN_GEOMETRY | \

View file

@ -2553,7 +2553,7 @@ void Item_func_min_max::fix_length_and_dec()
stored to the value pointer, if latter is provided.
RETURN
0 If one of arguments is NULL
0 If one of arguments is NULL or there was a execution error
# index of the least/greatest argument
*/
@ -2567,6 +2567,14 @@ uint Item_func_min_max::cmp_datetimes(ulonglong *value)
Item **arg= args + i;
bool is_null;
longlong res= get_datetime_value(thd, &arg, 0, datetime_item, &is_null);
/* Check if we need to stop (because of error or KILL) and stop the loop */
if (thd->is_error())
{
null_value= 1;
return 0;
}
if ((null_value= args[i]->null_value))
return 0;
if (i == 0 || (res < min_max ? cmp_sign : -cmp_sign) > 0)
@ -2595,6 +2603,12 @@ String *Item_func_min_max::val_str(String *str)
if (null_value)
return 0;
str_res= args[min_max_idx]->val_str(str);
if (args[min_max_idx]->null_value)
{
// check if the call to val_str() above returns a NULL value
null_value= 1;
return NULL;
}
str_res->set_charset(collation.collation);
return str_res;
}
@ -4623,6 +4637,14 @@ longlong Item_func_set_user_var::val_int_result()
return entry->val_int(&null_value);
}
bool Item_func_set_user_var::val_bool_result()
{
DBUG_ASSERT(fixed == 1);
check(TRUE);
update(); // Store expression
return entry->val_int(&null_value) != 0;
}
String *Item_func_set_user_var::str_result(String *str)
{
DBUG_ASSERT(fixed == 1);
@ -5001,7 +5023,7 @@ void Item_func_get_user_var::fix_length_and_dec()
decimals=0;
break;
case STRING_RESULT:
max_length= MAX_BLOB_WIDTH;
max_length= MAX_BLOB_WIDTH - 1;
break;
case DECIMAL_RESULT:
fix_char_length(DECIMAL_MAX_STR_LENGTH);

View file

@ -1416,6 +1416,7 @@ public:
my_decimal *val_decimal(my_decimal *);
double val_result();
longlong val_int_result();
bool val_bool_result();
String *str_result(String *str);
my_decimal *val_decimal_result(my_decimal *);
bool is_null_result();

View file

@ -179,6 +179,21 @@ public:
item_type=it;
}
String *val_str(String *);
void fix_length_and_dec()
{
for (unsigned int i= 0; i < arg_count; ++i)
{
if (args[i]->fixed && args[i]->field_type() != MYSQL_TYPE_GEOMETRY)
{
String str;
args[i]->print(&str, QT_ORDINARY);
str.append('\0');
my_error(ER_ILLEGAL_VALUE_FOR_TYPE, MYF(0), "non geometric",
str.ptr());
}
}
}
const char *func_name() const { return "multipoint"; }
};

View file

@ -1911,7 +1911,10 @@ int subselect_single_select_engine::exec()
}
if (!select_lex->uncacheable && thd->lex->describe &&
!(join->select_options & SELECT_DESCRIBE) &&
join->need_tmp && item->const_item())
join->need_tmp)
{
item->update_used_tables();
if (item->const_item())
{
/*
Force join->join_tmp creation, because this subquery will be replaced
@ -1924,6 +1927,7 @@ int subselect_single_select_engine::exec()
if (join->init_save_join_tab())
DBUG_RETURN(1); /* purecov: inspected */
}
}
if (item->engine_changed)
{
DBUG_RETURN(1);

View file

@ -2338,8 +2338,6 @@ void Item_extract::print(String *str, enum_query_type query_type)
void Item_extract::fix_length_and_dec()
{
value.alloc(32); // alloc buffer
maybe_null=1; // If wrong date
switch (int_type) {
case INTERVAL_YEAR: max_length=4; date_value=1; break;
@ -2382,6 +2380,8 @@ longlong Item_extract::val_int()
}
else
{
char buf[40];
String value(buf, sizeof(buf), &my_charset_bin);;
String *res= args[0]->val_str(&value);
if (!res ||
str_to_time_with_warn(res->charset(), res->ptr(), res->length(),

View file

@ -733,7 +733,6 @@ public:
class Item_extract :public Item_int_func
{
String value;
bool date_value;
public:
const interval_type int_type; // keep it public

View file

@ -1345,6 +1345,7 @@ READ_INFO::READ_INFO(File file_par, uint tot_length, CHARSET_INFO *cs,
MYF(MY_WME)))
{
my_free(buffer); /* purecov: inspected */
buffer= NULL;
error=1;
}
else
@ -1371,13 +1372,10 @@ READ_INFO::READ_INFO(File file_par, uint tot_length, CHARSET_INFO *cs,
READ_INFO::~READ_INFO()
{
if (!error)
{
if (need_end_io_cache)
if (!error && need_end_io_cache)
::end_io_cache(&cache);
if (buffer)
my_free(buffer);
error=1;
}
List_iterator<XML_TAG> xmlit(taglist);
XML_TAG *t;
while ((t= xmlit++))

View file

@ -2420,11 +2420,15 @@ void reinit_stmt_before_use(THD *thd, LEX *lex)
sl->where= sl->prep_where->copy_andor_structure(thd);
sl->where->cleanup();
}
else
sl->where= NULL;
if (sl->prep_having)
{
sl->having= sl->prep_having->copy_andor_structure(thd);
sl->having->cleanup();
}
else
sl->having= NULL;
DBUG_ASSERT(sl->join == 0);
ORDER *order;
/* Fix GROUP list */

View file

@ -2411,13 +2411,8 @@ JOIN::destroy()
cleanup(1);
/* Cleanup items referencing temporary table columns */
if (!tmp_all_fields3.is_empty())
{
List_iterator_fast<Item> it(tmp_all_fields3);
Item *item;
while ((item= it++))
item->cleanup();
}
cleanup_item_list(tmp_all_fields1);
cleanup_item_list(tmp_all_fields3);
if (exec_tmp_table1)
free_tmp_table(thd, exec_tmp_table1);
if (exec_tmp_table2)
@ -2428,6 +2423,19 @@ JOIN::destroy()
DBUG_RETURN(error);
}
void JOIN::cleanup_item_list(List<Item> &items) const
{
if (!items.is_empty())
{
List_iterator_fast<Item> it(items);
Item *item;
while ((item= it++))
item->cleanup();
}
}
/**
An entry point to single-unit select (a select without UNION).
@ -9017,10 +9025,10 @@ simplify_joins(JOIN *join, List<TABLE_LIST> *join_list, COND *conds, bool top)
/* Flatten nested joins that can be flattened. */
TABLE_LIST *right_neighbor= NULL;
bool fix_name_res= FALSE;
li.rewind();
while ((table= li++))
{
bool fix_name_res= FALSE;
nested_join= table->nested_join;
if (nested_join && !table->on_expr)
{

View file

@ -583,6 +583,7 @@ private:
*/
bool implicit_grouping;
bool make_simple_join(JOIN *join, TABLE *tmp_table);
void cleanup_item_list(List<Item> &items) const;
};

View file

@ -104,7 +104,7 @@ public:
inline uint32 alloced_length() const { return Alloced_length;}
inline char& operator [] (uint32 i) const { return Ptr[i]; }
inline void length(uint32 len) { str_length=len ; }
inline bool is_empty() { return (str_length == 0); }
inline bool is_empty() const { return (str_length == 0); }
inline void mark_as_const() { Alloced_length= 0;}
inline const char *ptr() const { return Ptr; }
inline char *c_ptr()

View file

@ -695,7 +695,6 @@ struct TABLE_SHARE
void (*ha_part_data_destroy)(HA_DATA_PARTITION *);
#endif
/** Instrumentation for this table share. */
PSI_table_share *m_psi;

View file

@ -2300,7 +2300,7 @@ my_tz_find(THD *thd, const String *name)
DBUG_PRINT("enter", ("time zone name='%s'",
name ? ((String *)name)->c_ptr_safe() : "NULL"));
if (!name)
if (!name || name->is_empty())
DBUG_RETURN(0);
mysql_mutex_lock(&tz_LOCK);

View file

@ -1899,7 +1899,6 @@ btr_page_split_and_insert(
buf_block_t* left_block;
buf_block_t* right_block;
buf_block_t* insert_block;
page_t* insert_page;
page_cur_t* page_cursor;
rec_t* first_rec;
byte* buf = 0; /* remove warning */
@ -2157,8 +2156,6 @@ insert_empty:
insert_block = right_block;
}
insert_page = buf_block_get_frame(insert_block);
/* 7. Reposition the cursor for insert and try insertion */
page_cursor = btr_cur_get_page_cur(cursor);
@ -2170,8 +2167,12 @@ insert_empty:
#ifdef UNIV_ZIP_DEBUG
{
page_t* insert_page
= buf_block_get_frame(insert_block);
page_zip_des_t* insert_page_zip
= buf_block_get_page_zip(insert_block);
ut_a(!insert_page_zip
|| page_zip_validate(insert_page_zip, insert_page));
}
@ -2564,7 +2565,6 @@ btr_compress(
ulint n_recs;
ulint max_ins_size;
ulint max_ins_size_reorg;
ulint level;
block = btr_cur_get_block(cursor);
page = btr_cur_get_page(cursor);
@ -2574,7 +2574,6 @@ btr_compress(
ut_ad(mtr_memo_contains(mtr, dict_index_get_lock(index),
MTR_MEMO_X_LOCK));
ut_ad(mtr_memo_contains(mtr, block, MTR_MEMO_PAGE_X_FIX));
level = btr_page_get_level(page, mtr);
space = dict_index_get_space(index);
zip_size = dict_table_zip_size(index->table);

View file

@ -1954,7 +1954,6 @@ btr_cur_optimistic_update(
page_t* page;
page_zip_des_t* page_zip;
rec_t* rec;
rec_t* orig_rec;
ulint max_size;
ulint new_rec_size;
ulint old_rec_size;
@ -1968,7 +1967,7 @@ btr_cur_optimistic_update(
block = btr_cur_get_block(cursor);
page = buf_block_get_frame(block);
orig_rec = rec = btr_cur_get_rec(cursor);
rec = btr_cur_get_rec(cursor);
index = cursor->index;
ut_ad(!!page_rec_is_comp(rec) == dict_table_is_comp(index->table));
ut_ad(mtr_memo_contains(mtr, block, MTR_MEMO_PAGE_X_FIX));
@ -3761,9 +3760,10 @@ btr_cur_set_ownership_of_extern_field(
Marks not updated extern fields as not-owned by this record. The ownership
is transferred to the updated record which is inserted elsewhere in the
index tree. In purge only the owner of externally stored field is allowed
to free the field. */
to free the field.
@return TRUE if BLOB ownership was transferred */
UNIV_INTERN
void
ibool
btr_cur_mark_extern_inherited_fields(
/*=================================*/
page_zip_des_t* page_zip,/*!< in/out: compressed page whose uncompressed
@ -3777,13 +3777,14 @@ btr_cur_mark_extern_inherited_fields(
ulint n;
ulint j;
ulint i;
ibool change_ownership = FALSE;
ut_ad(rec_offs_validate(rec, NULL, offsets));
ut_ad(!rec_offs_comp(offsets) || !rec_get_node_ptr_flag(rec));
if (!rec_offs_any_extern(offsets)) {
return;
return(FALSE);
}
n = rec_offs_n_fields(offsets);
@ -3806,10 +3807,14 @@ btr_cur_mark_extern_inherited_fields(
btr_cur_set_ownership_of_extern_field(
page_zip, rec, index, offsets, i, FALSE, mtr);
change_ownership = TRUE;
updated:
;
}
}
return(change_ownership);
}
/*******************************************************************//**
@ -4557,12 +4562,17 @@ btr_free_externally_stored_field(
}
for (;;) {
#ifdef UNIV_SYNC_DEBUG
buf_block_t* rec_block;
#endif /* UNIV_SYNC_DEBUG */
buf_block_t* ext_block;
mtr_start(&mtr);
rec_block = buf_page_get(page_get_space_id(
#ifdef UNIV_SYNC_DEBUG
rec_block =
#endif /* UNIV_SYNC_DEBUG */
buf_page_get(page_get_space_id(
page_align(field_ref)),
rec_zip_size,
page_get_page_no(

View file

@ -452,7 +452,6 @@ btr_pcur_move_backward_from_page(
mtr_t* mtr) /*!< in: mtr */
{
ulint prev_page_no;
ulint space;
page_t* page;
buf_block_t* prev_block;
ulint latch_mode;
@ -488,7 +487,6 @@ btr_pcur_move_backward_from_page(
page = btr_pcur_get_page(cursor);
prev_page_no = btr_page_get_prev(page, mtr);
space = buf_block_get_space(btr_pcur_get_block(cursor));
if (prev_page_no == FIL_NULL) {
} else if (btr_pcur_is_before_first_on_page(cursor)) {

View file

@ -1507,7 +1507,6 @@ btr_search_update_hash_on_delete(
rec_t* rec;
ulint fold;
index_id_t index_id;
ibool found;
ulint offsets_[REC_OFFS_NORMAL_SIZE];
mem_heap_t* heap = NULL;
rec_offs_init(offsets_);
@ -1540,7 +1539,7 @@ btr_search_update_hash_on_delete(
}
rw_lock_x_lock(&btr_search_latch);
found = ha_search_and_delete_if_found(table, fold, rec);
ha_search_and_delete_if_found(table, fold, rec);
rw_lock_x_unlock(&btr_search_latch);
}

View file

@ -627,7 +627,6 @@ dict_create_index_tree_step(
{
dict_index_t* index;
dict_table_t* sys_indexes;
dict_table_t* table;
dtuple_t* search_tuple;
ulint zip_size;
btr_pcur_t pcur;
@ -636,7 +635,6 @@ dict_create_index_tree_step(
ut_ad(mutex_own(&(dict_sys->mutex)));
index = node->index;
table = node->table;
sys_indexes = dict_sys->sys_indexes;

View file

@ -4442,7 +4442,6 @@ dict_index_print_low(
{
ib_int64_t n_vals;
ulint i;
const char* type_string;
ut_ad(mutex_own(&(dict_sys->mutex)));
@ -4457,14 +4456,6 @@ dict_index_print_low(
dict_index_stat_mutex_exit(index);
if (dict_index_is_clust(index)) {
type_string = "clustered index";
} else if (dict_index_is_unique(index)) {
type_string = "unique index";
} else {
type_string = "secondary index";
}
fprintf(stderr,
" INDEX: name %s, id %llu, fields %lu/%lu,"
" uniq %lu, type %lu\n"

View file

@ -1718,17 +1718,28 @@ err_exit:
err = dict_load_indexes(table, heap);
/* Initialize table foreign_child value. Its value could be
changed when dict_load_foreigns() is called below */
table->fk_max_recusive_level = 0;
/* If the force recovery flag is set, we open the table irrespective
of the error condition, since the user may want to dump data from the
clustered index. However we load the foreign key information only if
all indexes were loaded. */
if (!cached) {
} else if (err == DB_SUCCESS) {
err = dict_load_foreigns(table->name, TRUE);
err = dict_load_foreigns(table->name, TRUE, TRUE);
if (err != DB_SUCCESS) {
dict_table_remove_from_cache(table);
table = NULL;
}
} else if (!srv_force_recovery) {
dict_table_remove_from_cache(table);
table = NULL;
}
table->fk_max_recusive_level = 0;
#if 0
if (err != DB_SUCCESS && table != NULL) {
@ -1782,6 +1793,8 @@ dict_load_table_on_id(
ut_ad(mutex_own(&(dict_sys->mutex)));
table = NULL;
/* NOTE that the operation of this function is protected by
the dictionary mutex, and therefore no deadlocks can occur
with other dictionary operations. */
@ -1808,15 +1821,17 @@ dict_load_table_on_id(
BTR_SEARCH_LEAF, &pcur, &mtr);
rec = btr_pcur_get_rec(&pcur);
if (!btr_pcur_is_on_user_rec(&pcur)
|| rec_get_deleted_flag(rec, 0)) {
if (!btr_pcur_is_on_user_rec(&pcur)) {
/* Not found */
goto func_exit;
}
btr_pcur_close(&pcur);
mtr_commit(&mtr);
mem_heap_free(heap);
return(NULL);
/* Find the first record that is not delete marked */
while (rec_get_deleted_flag(rec, 0)) {
if (!btr_pcur_move_to_next_user_rec(&pcur, &mtr)) {
goto func_exit;
}
rec = btr_pcur_get_rec(&pcur);
}
/*---------------------------------------------------*/
@ -1829,12 +1844,7 @@ dict_load_table_on_id(
/* Check if the table id in record is the one searched for */
if (table_id != mach_read_from_8(field)) {
btr_pcur_close(&pcur);
mtr_commit(&mtr);
mem_heap_free(heap);
return(NULL);
goto func_exit;
}
/* Now we get the table name from the record */
@ -1842,7 +1852,7 @@ dict_load_table_on_id(
/* Load the table definition to memory */
table = dict_load_table(mem_heap_strdupl(heap, (char*) field, len),
TRUE);
func_exit:
btr_pcur_close(&pcur);
mtr_commit(&mtr);
mem_heap_free(heap);
@ -1952,8 +1962,12 @@ dict_load_foreign(
/*==============*/
const char* id, /*!< in: foreign constraint id as a
null-terminated string */
ibool check_charsets)
ibool check_charsets,
/*!< in: TRUE=check charset compatibility */
ibool check_recursive)
/*!< in: Whether to record the foreign table
parent count to avoid unlimited recursive
load of chained foreign tables */
{
dict_foreign_t* foreign;
dict_table_t* sys_foreign;
@ -1967,6 +1981,8 @@ dict_load_foreign(
ulint len;
ulint n_fields_and_type;
mtr_t mtr;
dict_table_t* for_table;
dict_table_t* ref_table;
ut_ad(mutex_own(&(dict_sys->mutex)));
@ -2051,11 +2067,54 @@ dict_load_foreign(
dict_load_foreign_cols(id, foreign);
ref_table = dict_table_check_if_in_cache_low(
foreign->referenced_table_name);
/* We could possibly wind up in a deep recursive calls if
we call dict_table_get_low() again here if there
is a chain of tables concatenated together with
foreign constraints. In such case, each table is
both a parent and child of the other tables, and
act as a "link" in such table chains.
To avoid such scenario, we would need to check the
number of ancesters the current table has. If that
exceeds DICT_FK_MAX_CHAIN_LEN, we will stop loading
the child table.
Foreign constraints are loaded in a Breath First fashion,
that is, the index on FOR_NAME is scanned first, and then
index on REF_NAME. So foreign constrains in which
current table is a child (foreign table) are loaded first,
and then those constraints where current table is a
parent (referenced) table.
Thus we could check the parent (ref_table) table's
reference count (fk_max_recusive_level) to know how deep the
recursive call is. If the parent table (ref_table) is already
loaded, and its fk_max_recusive_level is larger than
DICT_FK_MAX_CHAIN_LEN, we will stop the recursive loading
by skipping loading the child table. It will not affect foreign
constraint check for DMLs since child table will be loaded
at that time for the constraint check. */
if (!ref_table
|| ref_table->fk_max_recusive_level < DICT_FK_MAX_RECURSIVE_LOAD) {
/* If the foreign table is not yet in the dictionary cache, we
have to load it so that we are able to make type comparisons
in the next function call. */
dict_table_get_low(foreign->foreign_table_name);
for_table = dict_table_get_low(foreign->foreign_table_name);
if (for_table && ref_table && check_recursive) {
/* This is to record the longest chain of ancesters
this table has, if the parent has more ancesters
than this table has, record it after add 1 (for this
parent */
if (ref_table->fk_max_recusive_level
>= for_table->fk_max_recusive_level) {
for_table->fk_max_recusive_level =
ref_table->fk_max_recusive_level + 1;
}
}
}
/* Note that there may already be a foreign constraint object in
the dictionary cache for this constraint: then the following
@ -2080,6 +2139,8 @@ ulint
dict_load_foreigns(
/*===============*/
const char* table_name, /*!< in: table name */
ibool check_recursive,/*!< in: Whether to check recursive
load of tables chained by FK */
ibool check_charsets) /*!< in: TRUE=check charset
compatibility */
{
@ -2181,7 +2242,7 @@ loop:
/* Load the foreign constraint definition to the dictionary cache */
err = dict_load_foreign(id, check_charsets);
err = dict_load_foreign(id, check_charsets, check_recursive);
if (err != DB_SUCCESS) {
btr_pcur_close(&pcur);
@ -2209,6 +2270,11 @@ load_next_index:
mtr_start(&mtr);
/* Switch to scan index on REF_NAME, fk_max_recusive_level
already been updated when scanning FOR_NAME index, no need to
update again */
check_recursive = FALSE;
goto start_load;
}

View file

@ -384,18 +384,13 @@ eval_notfound(
/*==========*/
func_node_t* func_node) /*!< in: function node */
{
que_node_t* arg1;
que_node_t* arg2;
sym_node_t* cursor;
sel_node_t* sel_node;
ibool ibool_val;
arg1 = func_node->args;
arg2 = que_node_get_next(arg1);
ut_ad(func_node->func == PARS_NOTFOUND_TOKEN);
cursor = arg1;
cursor = func_node->args;
ut_ad(que_node_get_type(cursor) == QUE_NODE_SYMBOL);

View file

@ -899,6 +899,19 @@ convert_error_code_to_mysql(
case DB_INTERRUPTED:
my_error(ER_QUERY_INTERRUPTED, MYF(0));
/* fall through */
case DB_FOREIGN_EXCEED_MAX_CASCADE:
push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
HA_ERR_ROW_IS_REFERENCED,
"InnoDB: Cannot delete/update "
"rows with cascading foreign key "
"constraints that exceed max "
"depth of %d. Please "
"drop extra constraints and try "
"again", DICT_FK_MAX_RECURSIVE_LOAD);
/* fall through */
case DB_ERROR:
default:
return(-1); /* unspecified error */
@ -3542,12 +3555,19 @@ ha_innobase::innobase_initialize_autoinc()
err = row_search_max_autoinc(index, col_name, &read_auto_inc);
switch (err) {
case DB_SUCCESS:
/* At the this stage we do not know the increment
or the offset, so use a default increment of 1. */
auto_inc = read_auto_inc + 1;
break;
case DB_SUCCESS: {
ulonglong col_max_value;
col_max_value = innobase_get_int_col_max_value(field);
/* At the this stage we do not know the increment
nor the offset, so use a default increment of 1. */
auto_inc = innobase_next_autoinc(
read_auto_inc, 1, 1, col_max_value);
break;
}
case DB_RECORD_NOT_FOUND:
ut_print_timestamp(stderr);
fprintf(stderr, " InnoDB: MySQL and InnoDB data "
@ -3842,8 +3862,6 @@ retry:
dict_table_get_format(prebuilt->table));
}
info(HA_STATUS_NO_LOCK | HA_STATUS_VARIABLE | HA_STATUS_CONST);
/* Only if the table has an AUTOINC column. */
if (prebuilt->table != NULL && table->found_next_number_field != NULL) {
dict_table_autoinc_lock(prebuilt->table);
@ -3860,6 +3878,8 @@ retry:
dict_table_autoinc_unlock(prebuilt->table);
}
info(HA_STATUS_NO_LOCK | HA_STATUS_VARIABLE | HA_STATUS_CONST);
DBUG_RETURN(0);
}
@ -7199,7 +7219,6 @@ innobase_drop_database(
ulint len = 0;
trx_t* trx;
char* ptr;
int error;
char* namebuf;
THD* thd = current_thd;
@ -7242,7 +7261,7 @@ innobase_drop_database(
#else
trx = innobase_trx_allocate(thd);
#endif
error = row_drop_database_for_mysql(namebuf, trx);
row_drop_database_for_mysql(namebuf, trx);
my_free(namebuf);
/* Flush the log to reduce probability that the .frm files and
@ -9034,12 +9053,9 @@ innodb_show_status(
mutex_exit(&srv_monitor_file_mutex);
bool result = FALSE;
stat_print(thd, innobase_hton_name, (uint) strlen(innobase_hton_name),
STRING_WITH_LEN(""), str, flen);
if (stat_print(thd, innobase_hton_name, (uint) strlen(innobase_hton_name),
STRING_WITH_LEN(""), str, flen)) {
result= TRUE;
}
my_free(str);
DBUG_RETURN(FALSE);

View file

@ -1194,6 +1194,7 @@ trx_i_s_common_fill_table(
deadlock occurs between the mysqld server and mysql client,
see http://bugs.mysql.com/29900 ; when that bug is resolved
we can enable the DBUG_RETURN(ret) above */
ret++; // silence a gcc46 warning
DBUG_RETURN(0);
#endif
}

View file

@ -456,9 +456,10 @@ btr_estimate_number_of_different_key_vals(
Marks not updated extern fields as not-owned by this record. The ownership
is transferred to the updated record which is inserted elsewhere in the
index tree. In purge only the owner of externally stored field is allowed
to free the field. */
to free the field.
@return TRUE if BLOB ownership was transferred */
UNIV_INTERN
void
ibool
btr_cur_mark_extern_inherited_fields(
/*=================================*/
page_zip_des_t* page_zip,/*!< in/out: compressed page whose uncompressed

View file

@ -94,6 +94,9 @@ enum db_err {
DB_PRIMARY_KEY_IS_NULL, /* a column in the PRIMARY KEY
was found to be NULL */
DB_FOREIGN_EXCEED_MAX_CASCADE, /* Foreign key constraint related
cascading delete/update exceeds
maximum allowed depth */
DB_STATS_DO_NOT_EXIST, /* an operation that requires the
persistent storage, used for recording

View file

@ -707,6 +707,22 @@ ulint
dict_table_zip_size(
/*================*/
const dict_table_t* table); /*!< in: table */
/*********************************************************************//**
Obtain exclusive locks on all index trees of the table. This is to prevent
accessing index trees while InnoDB is updating internal metadata for
operations such as truncate tables. */
UNIV_INLINE
void
dict_table_x_lock_indexes(
/*======================*/
dict_table_t* table); /*!< in: table */
/*********************************************************************//**
Release the exclusive locks on all index tree. */
UNIV_INLINE
void
dict_table_x_unlock_indexes(
/*========================*/
dict_table_t* table); /*!< in: table */
/********************************************************************//**
Checks if a column is in the ordering columns of the clustered index of a
table. Column prefixes are treated like whole columns.

View file

@ -490,6 +490,48 @@ dict_table_zip_size(
return(dict_table_flags_to_zip_size(table->flags));
}
/*********************************************************************//**
Obtain exclusive locks on all index trees of the table. This is to prevent
accessing index trees while InnoDB is updating internal metadata for
operations such as truncate tables. */
UNIV_INLINE
void
dict_table_x_lock_indexes(
/*======================*/
dict_table_t* table) /*!< in: table */
{
dict_index_t* index;
ut_a(table);
ut_ad(mutex_own(&(dict_sys->mutex)));
/* Loop through each index of the table and lock them */
for (index = dict_table_get_first_index(table);
index != NULL;
index = dict_table_get_next_index(index)) {
rw_lock_x_lock(dict_index_get_lock(index));
}
}
/*********************************************************************//**
Release the exclusive locks on all index tree. */
UNIV_INLINE
void
dict_table_x_unlock_indexes(
/*========================*/
dict_table_t* table) /*!< in: table */
{
dict_index_t* index;
ut_a(table);
ut_ad(mutex_own(&(dict_sys->mutex)));
for (index = dict_table_get_first_index(table);
index != NULL;
index = dict_table_get_next_index(index)) {
rw_lock_x_unlock(dict_index_get_lock(index));
}
}
/********************************************************************//**
Gets the number of fields in the internal representation of an index,
including fields added by the dictionary system.

View file

@ -200,6 +200,8 @@ ulint
dict_load_foreigns(
/*===============*/
const char* table_name, /*!< in: table name */
ibool check_recursive,/*!< in: Whether to check recursive
load of tables chained by FK */
ibool check_charsets);/*!< in: TRUE=check charsets
compatibility */
/********************************************************************//**

View file

@ -116,6 +116,21 @@ ROW_FORMAT=REDUNDANT. */
in table->flags. */
/* @} */
/** Tables could be chained together with Foreign key constraint. When
first load the parent table, we would load all of its descedents.
This could result in rescursive calls and out of stack error eventually.
DICT_FK_MAX_RECURSIVE_LOAD defines the maximum number of recursive loads,
when exceeded, the child table will not be loaded. It will be loaded when
the foreign constraint check needs to be run. */
#define DICT_FK_MAX_RECURSIVE_LOAD 250
/** Similarly, when tables are chained together with foreign key constraints
with on cascading delete/update clause, delete from parent table could
result in recursive cascading calls. This defines the maximum number of
such cascading deletes/updates allowed. When exceeded, the delete from
parent table will fail, and user has to drop excessive foreign constraint
before proceeds. */
#define FK_MAX_CASCADE_DEL 300
/**********************************************************************//**
Creates a table memory object.
@ -469,6 +484,12 @@ struct dict_table_struct{
NOT allowed until this count gets to zero;
MySQL does NOT itself check the number of
open handles at drop */
unsigned fk_max_recusive_level:8;
/*!< maximum recursive level we support when
loading tables chained together with FK
constraints. If exceeds this level, we will
stop loading child table into memory along with
its parent table */
ulint n_foreign_key_checks_running;
/*!< count of how many foreign key check
operations are currently being performed

View file

@ -289,7 +289,7 @@ amount of increment. */
Returns the old value of *ptr, atomically sets *ptr to new_val */
# define os_atomic_test_and_set_byte(ptr, new_val) \
__sync_lock_test_and_set(ptr, new_val)
__sync_lock_test_and_set(ptr, (byte) new_val)
#elif defined(HAVE_IB_SOLARIS_ATOMICS)

View file

@ -381,6 +381,9 @@ struct que_thr_struct{
thus far */
ulint lock_state; /*!< lock state of thread (table or
row) */
ulint fk_cascade_depth; /*!< maximum cascading call depth
supported for foreign key constraint
related delete/updates */
};
#define QUE_THR_MAGIC_N 8476583

View file

@ -85,9 +85,6 @@ ut_rnd_gen_ulint(void)
/*==================*/
{
ulint rnd;
ulint n_bits;
n_bits = 8 * sizeof(ulint);
ut_rnd_ulint_counter = UT_RND1 * ut_rnd_ulint_counter + UT_RND2;

View file

@ -569,10 +569,8 @@ recv_synchronize_groups(
ib_uint64_t start_lsn;
ib_uint64_t end_lsn;
ib_uint64_t recovered_lsn;
ib_uint64_t limit_lsn;
recovered_lsn = recv_sys->recovered_lsn;
limit_lsn = recv_sys->limit_lsn;
/* Read the last recovered log block to the recovery system buffer:
the block is always incomplete */
@ -2908,7 +2906,9 @@ recv_recovery_from_checkpoint_start_func(
ib_uint64_t old_scanned_lsn;
ib_uint64_t group_scanned_lsn;
ib_uint64_t contiguous_lsn;
#ifdef UNIV_LOG_ARCHIVE
ib_uint64_t archived_lsn;
#endif /* UNIV_LOG_ARCHIVE */
byte* buf;
byte log_hdr_buf[LOG_FILE_HDR_SIZE];
ulint err;
@ -2963,7 +2963,9 @@ recv_recovery_from_checkpoint_start_func(
checkpoint_lsn = mach_read_from_8(buf + LOG_CHECKPOINT_LSN);
checkpoint_no = mach_read_from_8(buf + LOG_CHECKPOINT_NO);
#ifdef UNIV_LOG_ARCHIVE
archived_lsn = mach_read_from_8(buf + LOG_CHECKPOINT_ARCHIVED_LSN);
#endif /* UNIV_LOG_ARCHIVE */
/* Read the first log file header to print a note if this is
a recovery from a restored InnoDB Hot Backup */

View file

@ -1482,8 +1482,6 @@ try_again:
int create_flag;
ibool retry;
const char* mode_str = NULL;
const char* type_str = NULL;
const char* purpose_str = NULL;
try_again:
ut_a(name);
@ -1503,26 +1501,9 @@ try_again:
ut_error;
}
if (type == OS_LOG_FILE) {
type_str = "LOG";
} else if (type == OS_DATA_FILE) {
type_str = "DATA";
} else {
ut_error;
}
ut_a(type == OS_LOG_FILE || type == OS_DATA_FILE);
ut_a(purpose == OS_FILE_AIO || purpose == OS_FILE_NORMAL);
if (purpose == OS_FILE_AIO) {
purpose_str = "AIO";
} else if (purpose == OS_FILE_NORMAL) {
purpose_str = "NORMAL";
} else {
ut_error;
}
#if 0
fprintf(stderr, "Opening file %s, mode %s, type %s, purpose %s\n",
name, mode_str, type_str, purpose_str);
#endif
#ifdef O_SYNC
/* We let O_SYNC only affect log files; note that we map O_DSYNC to
O_SYNC because the datasync options seemed to corrupt files in 2001

View file

@ -1283,18 +1283,13 @@ que_run_threads_low(
que_thr_t* thr) /*!< in: query thread */
{
que_thr_t* next_thr;
ulint cumul_resource;
ulint loop_count;
ut_ad(thr->state == QUE_THR_RUNNING);
ut_a(thr_get_trx(thr)->error_state == DB_SUCCESS);
ut_ad(!mutex_own(&kernel_mutex));
/* cumul_resource counts how much resources the OS thread (NOT the
query thread) has spent in this function */
loop_count = QUE_MAX_LOOPS_WITHOUT_CHECK;
cumul_resource = 0;
loop:
/* Check that there is enough space in the log to accommodate
possible log entries by this query step; if the operation can touch

View file

@ -2418,7 +2418,7 @@ row_merge_rename_tables(
goto err_exit;
}
err = dict_load_foreigns(old_name, TRUE);
err = dict_load_foreigns(old_name, FALSE, TRUE);
if (err != DB_SUCCESS) {
err_exit:

View file

@ -635,6 +635,13 @@ handle_new_error:
"InnoDB: " REFMAN "forcing-recovery.html"
" for help.\n", stderr);
break;
case DB_FOREIGN_EXCEED_MAX_CASCADE:
fprintf(stderr, "InnoDB: Cannot delete/update rows with"
" cascading foreign key constraints that exceed max"
" depth of %lu\n"
"Please drop excessive foreign constraints"
" and try again\n", (ulong) DICT_FK_MAX_RECURSIVE_LOAD);
break;
default:
fprintf(stderr, "InnoDB: unknown error code %lu\n",
(ulong) err);
@ -1440,11 +1447,15 @@ row_update_for_mysql(
run_again:
thr->run_node = node;
thr->prev_node = node;
thr->fk_cascade_depth = 0;
row_upd_step(thr);
err = trx->error_state;
/* Reset fk_cascade_depth back to 0 */
thr->fk_cascade_depth = 0;
if (err != DB_SUCCESS) {
que_thr_stop_for_mysql(thr);
@ -1481,7 +1492,12 @@ run_again:
srv_n_rows_updated++;
}
/* We update table statistics only if it is a DELETE or UPDATE
that changes indexed columns, UPDATEs that change only non-indexed
columns would not affect statistics. */
if (node->is_delete || !(node->cmpl_info & UPD_NODE_NO_ORD_CHANGE)) {
row_update_statistics_if_needed(prebuilt->table);
}
trx->op_info = "";
@ -1635,12 +1651,27 @@ row_update_cascade_for_mysql(
trx_t* trx;
trx = thr_get_trx(thr);
/* Increment fk_cascade_depth to record the recursive call depth on
a single update/delete that affects multiple tables chained
together with foreign key relations. */
thr->fk_cascade_depth++;
if (thr->fk_cascade_depth > FK_MAX_CASCADE_DEL) {
return (DB_FOREIGN_EXCEED_MAX_CASCADE);
}
run_again:
thr->run_node = node;
thr->prev_node = node;
row_upd_step(thr);
/* The recursive call for cascading update/delete happens
in above row_upd_step(), reset the counter once we come
out of the recursive call, so it does not accumulate for
different row deletes */
thr->fk_cascade_depth = 0;
err = trx->error_state;
/* Note that the cascade node is a subnode of another InnoDB
@ -2115,7 +2146,7 @@ row_table_add_foreign_constraints(
name, reject_fks);
if (err == DB_SUCCESS) {
/* Check that also referencing constraints are ok */
err = dict_load_foreigns(name, TRUE);
err = dict_load_foreigns(name, FALSE, TRUE);
}
if (err != DB_SUCCESS) {
@ -2808,6 +2839,15 @@ row_truncate_table_for_mysql(
trx->table_id = table->id;
/* Lock all index trees for this table, as we will
truncate the table/index and possibly change their metadata.
All DML/DDL are blocked by table level lock, with
a few exceptions such as queries into information schema
about the table, MySQL could try to access index stats
for this kind of query, we need to use index locks to
sync up */
dict_table_x_lock_indexes(table);
if (table->space && !table->dir_path_of_temp_table) {
/* Discard and create the single-table tablespace. */
ulint space = table->space;
@ -2824,6 +2864,7 @@ row_truncate_table_for_mysql(
|| fil_create_new_single_table_tablespace(
space, table->name, FALSE, flags,
FIL_IBD_FILE_INITIAL_SIZE) != DB_SUCCESS) {
dict_table_x_unlock_indexes(table);
ut_print_timestamp(stderr);
fprintf(stderr,
" InnoDB: TRUNCATE TABLE %s failed to"
@ -2927,6 +2968,10 @@ next_rec:
mem_heap_free(heap);
/* Done with index truncation, release index tree locks,
subsequent work relates to table level metadata change */
dict_table_x_unlock_indexes(table);
dict_hdr_get_new_id(&new_id, NULL, NULL);
info = pars_info_create();
@ -3974,7 +4019,7 @@ end:
an ALTER, not in a RENAME. */
err = dict_load_foreigns(
new_name, !old_is_tmp || trx->check_foreigns);
new_name, FALSE, !old_is_tmp || trx->check_foreigns);
if (err != DB_SUCCESS) {
ut_print_timestamp(stderr);

View file

@ -786,7 +786,9 @@ row_purge_step(
que_thr_t* thr) /*!< in: query thread */
{
purge_node_t* node;
#ifdef UNIV_DEBUG
ulint err;
#endif /* UNIV_DEBUG */
ut_ad(thr);
@ -794,7 +796,10 @@ row_purge_step(
ut_ad(que_node_get_type(node) == QUE_NODE_PURGE);
err = row_purge(node, thr);
#ifdef UNIV_DEBUG
err =
#endif /* UNIV_DEBUG */
row_purge(node, thr);
ut_ad(err == DB_SUCCESS);

View file

@ -3349,6 +3349,7 @@ row_search_for_mysql(
mem_heap_t* heap = NULL;
ulint offsets_[REC_OFFS_NORMAL_SIZE];
ulint* offsets = offsets_;
ibool table_lock_waited = FALSE;
rec_offs_init(offsets_);
@ -3711,6 +3712,44 @@ release_search_latch_if_needed:
clust_index = dict_table_get_first_index(index->table);
/* Do some start-of-statement preparations */
if (!prebuilt->sql_stat_start) {
/* No need to set an intention lock or assign a read view */
if (trx->read_view == NULL
&& prebuilt->select_lock_type == LOCK_NONE) {
fputs("InnoDB: Error: MySQL is trying to"
" perform a consistent read\n"
"InnoDB: but the read view is not assigned!\n",
stderr);
trx_print(stderr, trx, 600);
fputc('\n', stderr);
ut_error;
}
} else if (prebuilt->select_lock_type == LOCK_NONE) {
/* This is a consistent read */
/* Assign a read view for the query */
trx_assign_read_view(trx);
prebuilt->sql_stat_start = FALSE;
} else {
wait_table_again:
err = lock_table(0, index->table,
prebuilt->select_lock_type == LOCK_S
? LOCK_IS : LOCK_IX, thr);
if (err != DB_SUCCESS) {
table_lock_waited = TRUE;
goto lock_table_wait;
}
prebuilt->sql_stat_start = FALSE;
}
/* Open or restore index cursor position */
if (UNIV_LIKELY(direction != 0)) {
ibool need_to_process = sel_restore_position_for_mysql(
&same_user_rec, BTR_SEARCH_LEAF,
@ -3786,42 +3825,6 @@ release_search_latch_if_needed:
}
}
if (!prebuilt->sql_stat_start) {
/* No need to set an intention lock or assign a read view */
if (trx->read_view == NULL
&& prebuilt->select_lock_type == LOCK_NONE) {
fputs("InnoDB: Error: MySQL is trying to"
" perform a consistent read\n"
"InnoDB: but the read view is not assigned!\n",
stderr);
trx_print(stderr, trx, 600);
fputc('\n', stderr);
ut_a(0);
}
} else if (prebuilt->select_lock_type == LOCK_NONE) {
/* This is a consistent read */
/* Assign a read view for the query */
trx_assign_read_view(trx);
prebuilt->sql_stat_start = FALSE;
} else {
ulint lock_mode;
if (prebuilt->select_lock_type == LOCK_S) {
lock_mode = LOCK_IS;
} else {
lock_mode = LOCK_IX;
}
err = lock_table(0, index->table, lock_mode, thr);
if (err != DB_SUCCESS) {
goto lock_wait_or_error;
}
prebuilt->sql_stat_start = FALSE;
}
rec_loop:
/*-------------------------------------------------------------*/
/* PHASE 4: Look for matching records in a loop */
@ -4542,6 +4545,7 @@ lock_wait_or_error:
btr_pcur_store_position(pcur, &mtr);
lock_table_wait:
mtr_commit(&mtr);
mtr_has_extra_clust_latch = FALSE;
@ -4559,6 +4563,14 @@ lock_wait_or_error:
thr->lock_state = QUE_THR_LOCK_NOLOCK;
mtr_start(&mtr);
/* Table lock waited, go try to obtain table lock
again */
if (table_lock_waited) {
table_lock_waited = FALSE;
goto wait_table_again;
}
sel_restore_position_for_mysql(&same_user_rec,
BTR_SEARCH_LEAF, pcur,
moves_up, &mtr);

View file

@ -114,12 +114,17 @@ row_undo_mod_clust_low(
btr_pcur_t* pcur;
btr_cur_t* btr_cur;
ulint err;
#ifdef UNIV_DEBUG
ibool success;
#endif /* UNIV_DEBUG */
pcur = &(node->pcur);
btr_cur = btr_pcur_get_btr_cur(pcur);
success = btr_pcur_restore_position(mode, pcur, mtr);
#ifdef UNIV_DEBUG
success =
#endif /* UNIV_DEBUG */
btr_pcur_restore_position(mode, pcur, mtr);
ut_ad(success);

View file

@ -1626,6 +1626,7 @@ row_upd_clust_rec_by_insert(
dict_table_t* table;
dtuple_t* entry;
ulint err;
ibool change_ownership = FALSE;
ut_ad(node);
ut_ad(dict_index_is_clust(index));
@ -1658,9 +1659,9 @@ row_upd_clust_rec_by_insert(
index = dict_table_get_first_index(table);
offsets = rec_get_offsets(rec, index, offsets_,
ULINT_UNDEFINED, &heap);
btr_cur_mark_extern_inherited_fields(
btr_cur_get_page_zip(btr_cur),
rec, index, offsets, node->update, mtr);
change_ownership = btr_cur_mark_extern_inherited_fields(
btr_cur_get_page_zip(btr_cur), rec, index, offsets,
node->update, mtr);
if (referenced) {
/* NOTE that the following call loses
the position of pcur ! */
@ -1694,10 +1695,11 @@ row_upd_clust_rec_by_insert(
row_upd_index_entry_sys_field(entry, index, DATA_TRX_ID, trx->id);
if (node->upd_ext) {
if (change_ownership) {
/* If we return from a lock wait, for example, we may have
extern fields marked as not-owned in entry (marked in the
if-branch above). We must unmark them. */
if-branch above). We must unmark them, take the ownership
back. */
btr_cur_unmark_dtuple_extern_fields(entry);

View file

@ -71,7 +71,9 @@ row_vers_impl_x_locked_off_kernel(
warning */
trx_t* trx;
ulint rec_del;
#ifdef UNIV_DEBUG
ulint err;
#endif /* UNIV_DEBUG */
mtr_t mtr;
ulint comp;
@ -169,7 +171,10 @@ row_vers_impl_x_locked_off_kernel(
heap2 = heap;
heap = mem_heap_create(1024);
err = trx_undo_prev_version_build(clust_rec, &mtr, version,
#ifdef UNIV_DEBUG
err =
#endif /* UNIV_DEBUG */
trx_undo_prev_version_build(clust_rec, &mtr, version,
clust_index, clust_offsets,
heap, &prev_version);
mem_heap_free(heap2); /* free version and clust_offsets */

View file

@ -313,9 +313,10 @@ trx_purge_add_update_undo_to_history(
trx_undo_t* undo;
trx_rseg_t* rseg;
trx_rsegf_t* rseg_header;
#ifdef UNIV_DEBUG
trx_usegf_t* seg_header;
#endif /* UNIV_DEBUG */
trx_ulogf_t* undo_header;
trx_upagef_t* page_header;
ulint hist_size;
undo = trx->update_undo;
@ -330,8 +331,9 @@ trx_purge_add_update_undo_to_history(
rseg->page_no, mtr);
undo_header = undo_page + undo->hdr_offset;
#ifdef UNIV_DEBUG
seg_header = undo_page + TRX_UNDO_SEG_HDR;
page_header = undo_page + TRX_UNDO_PAGE_HDR;
#endif /* UNIV_DEBUG */
if (undo->state != TRX_UNDO_CACHED) {
/* The undo log segment will not be reused */
@ -669,7 +671,6 @@ trx_purge_rseg_get_next_history_log(
{
page_t* undo_page;
trx_ulogf_t* log_hdr;
trx_usegf_t* seg_hdr;
fil_addr_t prev_log_addr;
trx_id_t trx_no;
ibool del_marks;
@ -690,7 +691,6 @@ trx_purge_rseg_get_next_history_log(
undo_page = trx_undo_page_get_s_latched(rseg->space, rseg->zip_size,
rseg->last_page_no, &mtr);
log_hdr = undo_page + rseg->last_offset;
seg_hdr = undo_page + TRX_UNDO_SEG_HDR;
/* Increase the purge page count by one for every handled log */
@ -1079,12 +1079,8 @@ trx_purge_rec_release(
/*==================*/
trx_undo_inf_t* cell) /*!< in: storage cell */
{
trx_undo_arr_t* arr;
mutex_enter(&(purge_sys->mutex));
arr = purge_sys->arr;
trx_purge_arr_remove_info(cell);
mutex_exit(&(purge_sys->mutex));

View file

@ -743,13 +743,8 @@ trx_undo_arr_remove_info(
undo_no_t undo_no)/*!< in: undo number */
{
trx_undo_inf_t* cell;
ulint n_used;
ulint n;
ulint i;
n_used = arr->n_used;
n = 0;
for (i = 0;; i++) {
cell = trx_undo_arr_get_nth_info(arr, i);

View file

@ -249,7 +249,9 @@ trx_sys_create_doublewrite_buf(void)
{
buf_block_t* block;
buf_block_t* block2;
#ifdef UNIV_SYNC_DEBUG
buf_block_t* new_block;
#endif /* UNIV_SYNC_DEBUG */
byte* doublewrite;
byte* fseg_header;
ulint page_no;
@ -352,7 +354,10 @@ start_again:
the page position in the tablespace, then the page
has not been written to in doublewrite. */
new_block = buf_page_get(TRX_SYS_SPACE, 0, page_no,
#ifdef UNIV_SYNC_DEBUG
new_block =
#endif /* UNIV_SYNC_DEBUG */
buf_page_get(TRX_SYS_SPACE, 0, page_no,
RW_X_LATCH, &mtr);
buf_block_dbg_add_level(new_block,
SYNC_NO_ORDER_CHECK);

View file

@ -1798,7 +1798,6 @@ trx_prepare_off_kernel(
/*===================*/
trx_t* trx) /*!< in: transaction */
{
page_t* update_hdr_page;
trx_rseg_t* rseg;
ib_uint64_t lsn = 0;
mtr_t mtr;
@ -1831,7 +1830,7 @@ trx_prepare_off_kernel(
}
if (trx->update_undo) {
update_hdr_page = trx_undo_set_state_at_prepare(
trx_undo_set_state_at_prepare(
trx, trx->update_undo, &mtr);
}

View file

@ -1072,14 +1072,11 @@ trx_undo_truncate_end(
ulint last_page_no;
trx_undo_rec_t* rec;
trx_undo_rec_t* trunc_here;
trx_rseg_t* rseg;
mtr_t mtr;
ut_ad(mutex_own(&(trx->undo_mutex)));
ut_ad(mutex_own(&(trx->rseg->mutex)));
rseg = trx->rseg;
for (;;) {
mtr_start(&mtr);
@ -1873,7 +1870,6 @@ trx_undo_set_state_at_prepare(
mtr_t* mtr) /*!< in: mtr */
{
trx_usegf_t* seg_hdr;
trx_upagef_t* page_hdr;
trx_ulogf_t* undo_header;
page_t* undo_page;
ulint offset;
@ -1891,7 +1887,6 @@ trx_undo_set_state_at_prepare(
undo->hdr_page_no, mtr);
seg_hdr = undo_page + TRX_UNDO_SEG_HDR;
page_hdr = undo_page + TRX_UNDO_PAGE_HDR;
/*------------------------------*/
undo->state = TRX_UNDO_PREPARED;