summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <jani@ua141d10.elisa.omakaista.fi>2005-11-03 15:01:04 +0200
committerunknown <jani@ua141d10.elisa.omakaista.fi>2005-11-03 15:01:04 +0200
commit8a4c773a7b7c4f2e85ae993d408099a036beb62e (patch)
tree751f1d44e86a509c4d5a8fbe7fdf1646e2747298
parent5a206634579d08c38a9f88355173a8e8c655af3f (diff)
parent1484d54821ff70c2acc43f851ff97fddff0b156c (diff)
downloadmariadb-git-8a4c773a7b7c4f2e85ae993d408099a036beb62e.tar.gz
Merge ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-4.1
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0-tmp mysql-test/mysql-test-run.sh: Auto merged BitKeeper/deleted/.del-ctype_cp932.result: Auto merged BitKeeper/deleted/.del-ctype_cp932.test: Auto merged Makefile.am: Merged from 4.1
-rwxr-xr-xBUILD/compile-pentium64-debug-max13
-rw-r--r--Makefile.am4
-rw-r--r--mysql-test/r/ctype_cp932_binlog.result19
-rw-r--r--mysql-test/t/ctype_cp932_binlog.test35
4 files changed, 69 insertions, 2 deletions
diff --git a/BUILD/compile-pentium64-debug-max b/BUILD/compile-pentium64-debug-max
new file mode 100755
index 00000000000..f0745c88c90
--- /dev/null
+++ b/BUILD/compile-pentium64-debug-max
@@ -0,0 +1,13 @@
+#! /bin/sh
+
+path=`dirname $0`
+. "$path/SETUP.sh" $@ --with-debug=full
+
+extra_flags="$pentium64_cflags $debug_cflags $max_cflags"
+c_warnings="$c_warnings $debug_extra_warnings"
+cxx_warnings="$cxx_warnings $debug_extra_warnings"
+extra_configs="$pentium_configs $debug_configs $max_configs"
+
+extra_configs="$extra_configs "
+
+. "$path/FINISH.sh"
diff --git a/Makefile.am b/Makefile.am
index 401a53459ae..d6a04583801 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -112,7 +112,7 @@ test:
test-force:
cd mysql-test; \
- ./mysql-test-run --force ; \
+ ./mysql-test-run --force && \
./mysql-test-run --ps-protocol --force
# We are testing a new Perl version of the test script
@@ -123,7 +123,7 @@ test-pl:
test-force-pl:
cd mysql-test; \
- ./mysql-test-run.pl --force ; \
+ ./mysql-test-run.pl --force && \
./mysql-test-run.pl --ps-protocol --force
# Don't update the files from bitkeeper
diff --git a/mysql-test/r/ctype_cp932_binlog.result b/mysql-test/r/ctype_cp932_binlog.result
new file mode 100644
index 00000000000..89f0ae71f4f
--- /dev/null
+++ b/mysql-test/r/ctype_cp932_binlog.result
@@ -0,0 +1,19 @@
+drop table if exists t1;
+set names cp932;
+set character_set_database = cp932;
+RESET MASTER;
+CREATE TABLE t1(f1 blob);
+PREPARE stmt1 FROM 'INSERT INTO t1 VALUES(?)';
+SET @var1= x'8300';
+EXECUTE stmt1 USING @var1;
+SHOW BINLOG EVENTS FROM 79;
+Log_name Pos Event_type Server_id Orig_log_pos Info
+master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=95,COLLATION_CONNECTION=95,COLLATION_DATABASE=95,COLLATION_SERVER=8
+master-bin.000001 # Query 1 # use `test`; CREATE TABLE t1(f1 blob)
+master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=95,COLLATION_CONNECTION=95,COLLATION_DATABASE=95,COLLATION_SERVER=8
+master-bin.000001 # User var 1 # @`var1`=_binary 0x8300 COLLATE binary
+master-bin.000001 # Query 1 # use `test`; INSERT INTO t1 VALUES(@'var1')
+SELECT HEX(f1) FROM t1;
+HEX(f1)
+8300
+DROP table t1;
diff --git a/mysql-test/t/ctype_cp932_binlog.test b/mysql-test/t/ctype_cp932_binlog.test
new file mode 100644
index 00000000000..e8ec0d46caf
--- /dev/null
+++ b/mysql-test/t/ctype_cp932_binlog.test
@@ -0,0 +1,35 @@
+-- source include/not_embedded.inc
+-- source include/have_cp932.inc
+
+--character_set cp932
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+
+set names cp932;
+set character_set_database = cp932;
+
+# Test prepared statement with 0x8300 sequence in parameter while
+# running with cp932 client character set.
+RESET MASTER;
+CREATE TABLE t1(f1 blob);
+PREPARE stmt1 FROM 'INSERT INTO t1 VALUES(?)';
+SET @var1= x'8300';
+# TODO: Note that this doesn't actually test the code which was added for
+# bug#11338 because this syntax for prepared statements causes the PS to
+# be replicated differently than if we executed the PS from C or Java.
+# Using this syntax, variable names are inserted into the binlog instead
+# of values. The real goal of this test is to check the code that was
+# added to Item_param::query_val_str() in order to do hex encoding of
+# PS parameters when the client character set is cp932;
+# Bug#11338 has an example java program which can be used to verify this
+# code (and I have used it to test the fix) until there is some way to
+# exercise this code from mysql-test-run.
+EXECUTE stmt1 USING @var1;
+--replace_column 2 # 5 #
+SHOW BINLOG EVENTS FROM 79;
+SELECT HEX(f1) FROM t1;
+DROP table t1;
+# end test for bug#11338
+
+# End of 4.1 tests