Below is the list of changes that have just been committed into a local
5.0 repository of kostja. When kostja does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet
1.1948 05/05/14 12:26:46 konstantin@stripped +14 -0
Manual merge
strings/ctype-ucs2.c
1.46 05/05/14 12:24:20 konstantin@stripped +0 -0
Auto merged
strings/ctype-big5.c
1.77 05/05/14 12:24:20 konstantin@stripped +0 -0
Auto merged
sql/ha_blackhole.cc
1.7 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
mysql-test/t/ps_grant.test
1.4 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
mysql-test/t/ctype_ucs.test
1.29 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
mysql-test/r/ctype_ucs.result
1.34 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
libmysqld/Makefile.am
1.56 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
libmysql/libmysql.c
1.213 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
innobase/row/row0mysql.c
1.105 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
include/mysql.h
1.149 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
BitKeeper/deleted/.del-errmsg.txt~ffe4a0c9e3206150
1.80 05/05/14 12:24:19 konstantin@stripped +0 -0
Auto merged
BitKeeper/deleted/.del-ctype-cp932.c
1.3 05/05/14 12:24:18 konstantin@stripped +0 -0
Auto merged
configure.in
1.310 05/05/14 12:24:18 konstantin@stripped +0 -0
Auto merged
BitKeeper/deleted/.del-errmsg.txt~4617575065d612b9
1.125 05/05/14 12:24:18 konstantin@stripped +0 -0
Auto merged
BitKeeper/deleted/.del-ctype-cp932.c
1.1.1.2 05/05/14 12:24:18 konstantin@stripped +0 -0
Merge rename: strings/ctype-cp932.c -> BitKeeper/deleted/.del-ctype-cp932.c
BitKeeper/deleted/.del-errmsg.txt~ffe4a0c9e3206150
1.18.18.2 05/05/14 12:24:17 konstantin@stripped +0 -0
Merge rename: sql/share/serbian/errmsg.txt -> BitKeeper/deleted/.del-errmsg.txt~ffe4a0c9e3206150
BitKeeper/deleted/.del-errmsg.txt~4617575065d612b9
1.62.21.2 05/05/14 12:24:17 konstantin@stripped +0 -0
Merge rename: sql/share/danish/errmsg.txt -> BitKeeper/deleted/.del-errmsg.txt~4617575065d612b9
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: konstantin
# Host: dragonfly.local
# Root: /media/sda1/mysql/mysql-5.0-merge/RESYNC
--- 1.309/configure.in 2005-05-09 20:40:30 +04:00
+++ 1.310/configure.in 2005-05-14 12:24:18 +04:00
@@ -141,7 +141,10 @@
export CC CXX LD AR RANLIB
AC_SUBST(AR)
AC_SUBST(RANLIB)
+ with_darwin_mwcc=yes
])
+
+AM_CONDITIONAL(DARWIN_MWCC, test x$with_darwin_mwcc = xyes)
if test "x${CFLAGS-}" = x ; then
cflags_is_set=no
--- 1.148/include/mysql.h 2005-04-13 14:22:15 +04:00
+++ 1.149/include/mysql.h 2005-05-14 12:24:19 +04:00
@@ -384,6 +384,7 @@
const char * STDCALL mysql_info(MYSQL *mysql);
unsigned long STDCALL mysql_thread_id(MYSQL *mysql);
const char * STDCALL mysql_character_set_name(MYSQL *mysql);
+int STDCALL mysql_set_character_set(MYSQL *mysql, char *csname);
MYSQL * STDCALL mysql_init(MYSQL *mysql);
my_bool STDCALL mysql_ssl_set(MYSQL *mysql, const char *key,
--- 1.212/libmysql/libmysql.c 2005-05-12 11:16:07 +04:00
+++ 1.213/libmysql/libmysql.c 2005-05-14 12:24:19 +04:00
@@ -1495,6 +1495,36 @@
return mysql->charset->csname;
}
+int STDCALL mysql_set_character_set(MYSQL *mysql, char *cs_name)
+{
+ struct charset_info_st *cs;
+ const char *save_csdir = charsets_dir;
+
+ if (mysql->options.charset_dir)
+ charsets_dir = mysql->options.charset_dir;
+
+ if ( (cs = get_charset_by_csname(cs_name, MY_CS_PRIMARY, MYF(0))) )
+ {
+ char buff[MY_CS_NAME_SIZE + 10];
+ charsets_dir = save_csdir;
+ sprintf(buff, "SET NAMES %s", cs_name);
+ if (!mysql_query(mysql, buff)) {
+ mysql->charset = cs;
+ }
+ } else {
+ char cs_dir_name[FN_REFLEN];
+ get_charsets_dir(cs_dir_name);
+ mysql->net.last_errno=CR_CANT_READ_CHARSET;
+ strmov(mysql->net.sqlstate, unknown_sqlstate);
+ my_snprintf(mysql->net.last_error, sizeof(mysql->net.last_error)-1,
+ ER(mysql->net.last_errno),
+ cs_name,
+ cs_dir_name);
+
+ }
+ charsets_dir = save_csdir;
+ return mysql->net.last_errno;
+}
uint STDCALL mysql_thread_safe(void)
{
@@ -4375,9 +4405,12 @@
/*
We only need to check that stmt->field_count - if it is not null
stmt->bind was initialized in mysql_stmt_prepare
- */
+ stmt->bind overlaps with bind if mysql_stmt_bind_param
+ is called from mysql_stmt_store_result.
+ */
- memcpy((char*) stmt->bind, (char*) bind, sizeof(MYSQL_BIND) * bind_count);
+ if (stmt->bind != bind)
+ memcpy((char*) stmt->bind, (char*) bind, sizeof(MYSQL_BIND) * bind_count);
for (param= stmt->bind, end= param + bind_count, field= stmt->fields ;
param < end ;
--- 1.62.21.1/sql/share/danish/errmsg.txt 2005-05-14 02:28:05 +04:00
+++ 1.125/BitKeeper/deleted/.del-errmsg.txt~4617575065d612b9 2005-05-14 12:24:18 +04:00
@@ -282,12 +282,12 @@
"%d line(s) were cut by GROUP_CONCAT()",
"Row %ld doesn't contain data for all columns",
"Row %ld was truncated; it contained more data than there were input columns",
-"Data truncated; NULL supplied to NOT NULL column '%s' at row %ld",
-"Data truncated; out of range for column '%s' at row %ld",
+"Column set to default value; NULL supplied to NOT NULL column '%s' at row %ld",
+"Out of range value adjusted for column '%s' at row %ld",
"Data truncated for column '%s' at row %ld",
"Using storage engine %s for table '%s'",
"Illegal mix of collations (%s,%s) and (%s,%s) for operation '%s'",
-"Can't drop one or more of the requested users",
+"Cannot drop one or more of the requested users",
"Can't revoke all privileges, grant for one or more of the requested users",
"Illegal mix of collations (%s,%s), (%s,%s), (%s,%s) for operation '%s'",
"Illegal mix of collations for operation '%s'",
@@ -322,4 +322,97 @@
"Invalid %s character string: '%.64s'",
"Result of %s() was larger than max_allowed_packet (%ld) - truncated"
"Conflicting declarations: '%s%s' and '%s%s'"
-
+"Can't create a %s from within another stored routine"
+"%s %s already exists"
+"%s %s does not exist"
+"Failed to DROP %s %s"
+"Failed to CREATE %s %s"
+"%s with no matching label: %s"
+"Redefining label %s"
+"End-label %s without match"
+"Referring to uninitialized variable %s"
+"SELECT in a stored procedure must have INTO"
+"RETURN is only allowed in a FUNCTION"
+"Statements like SELECT, INSERT, UPDATE (and others) are not allowed in a FUNCTION"
+"The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored"
+"The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been translated to SET SQL_LOG_BIN"
+"Query execution was interrupted"
+"Incorrect number of arguments for %s %s; expected %u, got %u"
+"Undefined CONDITION: %s"
+"No RETURN found in FUNCTION %s"
+"FUNCTION %s ended without RETURN"
+"Cursor statement must be a SELECT"
+"Cursor SELECT must not have INTO"
+"Undefined CURSOR: %s"
+"Cursor is already open"
+"Cursor is not open"
+"Undeclared variable: %s"
+"Incorrect number of FETCH variables"
+"No data to FETCH"
+"Duplicate parameter: %s"
+"Duplicate variable: %s"
+"Duplicate condition: %s"
+"Duplicate cursor: %s"
+"Failed to ALTER %s %s"
+"Subselect value not supported"
+"USE is not allowed in a stored procedure"
+"Variable or condition declaration after cursor or handler declaration"
+"Cursor declaration after handler declaration"
+"Case not found for CASE statement"
+"Configuration file '%-.64s' is too big"
+"Malformed file type header in file '%-.64s'"
+"Unexpected end of file while parsing comment '%-.64s'"
+"Error while parsing parameter '%-.64s' (line: '%-.64s')"
+"Unexpected end of file while skipping unknown parameter '%-.64s'"
+"EXPLAIN/SHOW can not be issued; lacking privileges for underlying table"
+"File '%-.64s' has unknown type '%-.64s' in its header"
+"'%-.64s.%-.64s' is not %s"
+"Column '%-.64s' is not updatable"
+"View's SELECT contains a subquery in the FROM clause"
+"View's SELECT contains a '%s' clause"
+"View's SELECT contains a variable or parameter"
+"View's SELECT contains a temporary table '%-.64s'"
+"View's SELECT and view's field list have different column counts"
+"View merge algorithm can't be used here for now (assumed undefined algorithm)"
+"View being updated does not have complete key of underlying table in it"
+"View '%-.64s.%-.64s' references invalid table(s) or column(s)"
+"Can't drop a %s from within another stored routine"
+"GOTO is not allowed in a stored procedure handler"
+"Trigger already exists"
+"Trigger does not exist"
+"Trigger's '%-.64s' is view or temporary table"
+"Updating of %s row is not allowed in %strigger"
+"There is no %s row in %s trigger"
+"Field '%-.64s' doesn't have a default value",
+"Division by 0",
+"Incorrect %-.32s value: '%-.128s' for column '%.64s' at row %ld",
+"Illegal %s '%-.64s' value found during parsing",
+"CHECK OPTION on non-updatable view '%-.64s.%-.64s'"
+"CHECK OPTION failed '%-.64s.%-.64s'"
+"Access denied; you are not the procedure/function definer of '%s'"
+"Failed purging old relay logs: %s"
+"Password hash should be a %d-digit hexadecimal number"
+"Target log not found in binlog index"
+"I/O error reading log index file"
+"Server configuration does not permit binlog purge"
+"Failed on fseek()"
+"Fatal error during log purge"
+"A purgeable log is in use, will not purge"
+"Unknown error during log purge"
+"Failed initializing relay log position: %s"
+"You are not using binary logging"
+"The '%-.64s' syntax is reserved for purposes internal to the MySQL server"
+"WSAStartup Failed"
+"Can't handle procedures with differents groups yet"
+"Select must have a group with this procedure"
+"Can't use ORDER clause with this procedure"
+"Binary logging and replication forbid changing the global server %s"
+"Can't map file: %-.64s, errno: %d"
+"Wrong magic in %-.64s"
+"Prepared statement contains too many placeholders"
+"Key part '%-.64s' length cannot be 0"
+"View text checksum failed"
+"Can not modify more than one base table through a join view '%-.64s.%-.64s'"
+"Can not insert into join view '%-.64s.%-.64s' without fields list"
+"Can not delete from join view '%-.64s.%-.64s'"
+"Operation %s failed for '%.256s'",
--- 1.76/strings/ctype-big5.c 2005-05-05 20:13:08 +04:00
+++ 1.77/strings/ctype-big5.c 2005-05-14 12:24:20 +04:00
@@ -6301,7 +6301,7 @@
const char *emb= e - 1; /* Last possible end of an MB character */
*error= 0;
- while (pos && b < e)
+ while (pos-- && b < e)
{
if ((uchar) b[0] < 128)
{
--- 1.33/mysql-test/r/ctype_ucs.result 2005-04-02 07:17:13 +04:00
+++ 1.34/mysql-test/r/ctype_ucs.result 2005-05-14 12:24:19 +04:00
@@ -606,6 +606,24 @@
ucs2_bin 0061
ucs2_bin 00610020
drop table t1;
+select hex(substr(_ucs2 0x00e400e50068,1));
+hex(substr(_ucs2 0x00e400e50068,1))
+00E400E50068
+select hex(substr(_ucs2 0x00e400e50068,2));
+hex(substr(_ucs2 0x00e400e50068,2))
+00E50068
+select hex(substr(_ucs2 0x00e400e50068,3));
+hex(substr(_ucs2 0x00e400e50068,3))
+0068
+select hex(substr(_ucs2 0x00e400e50068,-1));
+hex(substr(_ucs2 0x00e400e50068,-1))
+0068
+select hex(substr(_ucs2 0x00e400e50068,-2));
+hex(substr(_ucs2 0x00e400e50068,-2))
+00E50068
+select hex(substr(_ucs2 0x00e400e50068,-3));
+hex(substr(_ucs2 0x00e400e50068,-3))
+00E400E50068
SET NAMES latin1;
SET collation_connection='ucs2_swedish_ci';
CREATE TABLE t1 (Field1 int(10) default '0');
--- 1.28/mysql-test/t/ctype_ucs.test 2005-04-02 07:17:13 +04:00
+++ 1.29/mysql-test/t/ctype_ucs.test 2005-05-14 12:24:19 +04:00
@@ -376,6 +376,16 @@
SET collation_connection='ucs2_bin';
-- source include/ctype_filesort.inc
+#
+# Bug#10344 Some string functions fail for UCS2
+#
+select hex(substr(_ucs2 0x00e400e50068,1));
+select hex(substr(_ucs2 0x00e400e50068,2));
+select hex(substr(_ucs2 0x00e400e50068,3));
+select hex(substr(_ucs2 0x00e400e50068,-1));
+select hex(substr(_ucs2 0x00e400e50068,-2));
+select hex(substr(_ucs2 0x00e400e50068,-3));
+
SET NAMES latin1;
#
# Bug#8235
--- 1.45/strings/ctype-ucs2.c 2005-05-05 20:13:09 +04:00
+++ 1.46/strings/ctype-ucs2.c 2005-05-14 12:24:20 +04:00
@@ -1267,7 +1267,7 @@
const char *e __attribute__((unused)),
uint pos)
{
- return pos*2;
+ return pos > e - b ? e - b + 2 : pos * 2;
}
--- 1.18.18.1/sql/share/serbian/errmsg.txt 2005-05-14 02:28:05 +04:00
+++ 1.80/BitKeeper/deleted/.del-errmsg.txt~ffe4a0c9e3206150 2005-05-14 12:24:19 +04:00
@@ -272,12 +272,12 @@
"%d line(s) were cut by GROUP_CONCAT()",
"Row %ld doesn't contain data for all columns",
"Row %ld was truncated; it contained more data than there were input columns",
-"Data truncated; NULL supplied to NOT NULL column '%s' at row %ld",
-"Data truncated; out of range for column '%s' at row %ld",
+"Column set to default value; NULL supplied to NOT NULL column '%s' at row %ld",
+"Out of range value adjusted for column '%s' at row %ld",
"Data truncated for column '%s' at row %ld",
"Using storage engine %s for table '%s'",
"Illegal mix of collations (%s,%s) and (%s,%s) for operation '%s'",
-"Can't drop one or more of the requested users",
+"Cannot drop one or more of the requested users",
"Can't revoke all privileges, grant for one or more of the requested users",
"Illegal mix of collations (%s,%s), (%s,%s), (%s,%s) for operation '%s'",
"Illegal mix of collations for operation '%s'",
@@ -312,4 +312,97 @@
"Invalid %s character string: '%.64s'",
"Result of %s() was larger than max_allowed_packet (%ld) - truncated"
"Conflicting declarations: '%s%s' and '%s%s'"
-
+"Can't create a %s from within another stored routine"
+"%s %s already exists"
+"%s %s does not exist"
+"Failed to DROP %s %s"
+"Failed to CREATE %s %s"
+"%s with no matching label: %s"
+"Redefining label %s"
+"End-label %s without match"
+"Referring to uninitialized variable %s"
+"SELECT in a stored procedure must have INTO"
+"RETURN is only allowed in a FUNCTION"
+"Statements like SELECT, INSERT, UPDATE (and others) are not allowed in a FUNCTION"
+"The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored"
+"The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been translated to SET SQL_LOG_BIN"
+"Query execution was interrupted"
+"Incorrect number of arguments for %s %s; expected %u, got %u"
+"Undefined CONDITION: %s"
+"No RETURN found in FUNCTION %s"
+"FUNCTION %s ended without RETURN"
+"Cursor statement must be a SELECT"
+"Cursor SELECT must not have INTO"
+"Undefined CURSOR: %s"
+"Cursor is already open"
+"Cursor is not open"
+"Undeclared variable: %s"
+"Incorrect number of FETCH variables"
+"No data to FETCH"
+"Duplicate parameter: %s"
+"Duplicate variable: %s"
+"Duplicate condition: %s"
+"Duplicate cursor: %s"
+"Failed to ALTER %s %s"
+"Subselect value not supported"
+"USE is not allowed in a stored procedure"
+"Variable or condition declaration after cursor or handler declaration"
+"Cursor declaration after handler declaration"
+"Case not found for CASE statement"
+"Configuration file '%-.64s' is too big"
+"Malformed file type header in file '%-.64s'"
+"Unexpected end of file while parsing comment '%-.64s'"
+"Error while parsing parameter '%-.64s' (line: '%-.64s')"
+"Unexpected end of file while skipping unknown parameter '%-.64s'"
+"EXPLAIN/SHOW can not be issued; lacking privileges for underlying table"
+"File '%-.64s' has unknown type '%-.64s' in its header"
+"'%-.64s.%-.64s' is not %s"
+"Column '%-.64s' is not updatable"
+"View's SELECT contains a subquery in the FROM clause"
+"View's SELECT contains a '%s' clause"
+"View's SELECT contains a variable or parameter"
+"View's SELECT contains a temporary table '%-.64s'"
+"View's SELECT and view's field list have different column counts"
+"View merge algorithm can't be used here for now (assumed undefined algorithm)"
+"View being updated does not have complete key of underlying table in it"
+"View '%-.64s.%-.64s' references invalid table(s) or column(s)"
+"Can't drop a %s from within another stored routine"
+"GOTO is not allowed in a stored procedure handler"
+"Trigger already exists"
+"Trigger does not exist"
+"Trigger's '%-.64s' is view or temporary table"
+"Updating of %s row is not allowed in %strigger"
+"There is no %s row in %s trigger"
+"Field '%-.64s' doesn't have a default value",
+"Division by 0",
+"Incorrect %-.32s value: '%-.128s' for column '%.64s' at row %ld",
+"Illegal %s '%-.64s' value found during parsing",
+"CHECK OPTION on non-updatable view '%-.64s.%-.64s'"
+"CHECK OPTION failed '%-.64s.%-.64s'"
+"Access denied; you are not the procedure/function definer of '%s'"
+"Failed purging old relay logs: %s"
+"Password hash should be a %d-digit hexadecimal number"
+"Target log not found in binlog index"
+"I/O error reading log index file"
+"Server configuration does not permit binlog purge"
+"Failed on fseek()"
+"Fatal error during log purge"
+"A purgeable log is in use, will not purge"
+"Unknown error during log purge"
+"Failed initializing relay log position: %s"
+"You are not using binary logging"
+"The '%-.64s' syntax is reserved for purposes internal to the MySQL server"
+"WSAStartup Failed"
+"Can't handle procedures with differents groups yet"
+"Select must have a group with this procedure"
+"Can't use ORDER clause with this procedure"
+"Binary logging and replication forbid changing the global server %s"
+"Can't map file: %-.64s, errno: %d"
+"Wrong magic in %-.64s"
+"Prepared statement contains too many placeholders"
+"Key part '%-.64s' length cannot be 0"
+"View text checksum failed"
+"Can not modify more than one base table through a join view '%-.64s.%-.64s'"
+"Can not insert into join view '%-.64s.%-.64s' without fields list"
+"Can not delete from join view '%-.64s.%-.64s'"
+"Operation %s failed for '%.256s'",
--- 1.6/sql/ha_blackhole.cc 2005-05-09 00:47:43 +04:00
+++ 1.7/sql/ha_blackhole.cc 2005-05-14 12:24:19 +04:00
@@ -132,8 +132,9 @@
THR_LOCK_DATA **to,
enum thr_lock_type lock_type)
{
+ if (lock_type != TL_IGNORE && lock.type == TL_UNLOCK)
+ lock.type=lock_type;
*to++= &lock;
-
return to;
}
--- 1.3/mysql-test/t/ps_grant.test 2005-04-04 23:43:55 +04:00
+++ 1.4/mysql-test/t/ps_grant.test 2005-05-14 12:24:19 +04:00
@@ -1,10 +1,6 @@
# Can't test grants with embedded server
-- source include/not_embedded.inc
-# Tested here simply so it is not tested with embedded server
-prepare stmt4 from ' show full processlist ';
---replace_column 1 number 6 time 3 localhost
-execute stmt4;
let $type= 'MYISAM' ;
@@ -115,6 +111,11 @@
show grants for second_user@localhost ;
drop database mysqltest;
+
+# Tested here simply so it is not tested with embedded server
+prepare stmt4 from ' show full processlist ';
+--replace_column 1 number 6 time 3 localhost
+execute stmt4;
## grant/revoke + drop user
--error 1295
--- 1.104/innobase/row/row0mysql.c 2005-04-13 18:06:28 +04:00
+++ 1.105/innobase/row/row0mysql.c 2005-05-14 12:24:19 +04:00
@@ -1885,10 +1885,18 @@
trx_general_rollback_for_mysql(trx, FALSE, NULL);
if (err == DB_OUT_OF_FILE_SPACE) {
- fputs("InnoDB: Warning: cannot create table ", stderr);
+ ut_print_timestamp(stderr);
+
+ fputs(" InnoDB: Warning: cannot create table ",
+ stderr);
ut_print_name(stderr, trx, table->name);
fputs(" because tablespace full\n", stderr);
- row_drop_table_for_mysql(table->name, trx, FALSE);
+
+ if (dict_table_get_low(table->name)) {
+
+ row_drop_table_for_mysql(table->name, trx,
+ FALSE);
+ }
} else if (err == DB_DUPLICATE_KEY) {
ut_print_timestamp(stderr);
--- 1.55/libmysqld/Makefile.am 2005-03-26 01:12:43 +03:00
+++ 1.56/libmysqld/Makefile.am 2005-05-14 12:24:19 +04:00
@@ -87,6 +87,9 @@
# generate a total libmysqld.a from all library files,
libmysqld.a: libmysqld_int.a $(INC_LIB)
+if DARWIN_MWCC
+ mwld -lib -o $@ libmysqld_int.a `ls -1 $(INC_LIB) | sort -u`
+else
if test "$(host_os)" = "netware" ; \
then \
$(libmysqld_a_AR) libmysqld.a libmysqld_int.a $(INC_LIB) ; \
@@ -108,7 +111,7 @@
rm -f tmp/* ; \
$(RANLIB) libmysqld.a ; \
fi
-
+endif
## XXX: any time the client interface changes, we'll need to bump
## the version info for libmysqld; however, it's possible for the
| Thread |
|---|
| • bk commit into 5.0 tree (konstantin:1.1948) | konstantin | 14 May |