Merge lgrimmer@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/space/my/mysql-4.1
This commit is contained in:
commit
2c6b02ca32
@ -181,6 +181,7 @@ ram@mysql.r18.ru
|
|||||||
ram@ram.(none)
|
ram@ram.(none)
|
||||||
ranger@regul.home.lan
|
ranger@regul.home.lan
|
||||||
rburnett@build.mysql.com
|
rburnett@build.mysql.com
|
||||||
|
reggie@bob.(none)
|
||||||
root@home.(none)
|
root@home.(none)
|
||||||
root@mc04.(none)
|
root@mc04.(none)
|
||||||
root@x3.internalnet
|
root@x3.internalnet
|
||||||
|
@ -3232,13 +3232,20 @@ static const char* construct_prompt()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 'p':
|
case 'p':
|
||||||
|
{
|
||||||
#ifndef EMBEDDED_LIBRARY
|
#ifndef EMBEDDED_LIBRARY
|
||||||
if (!connected)
|
if (!connected)
|
||||||
{
|
{
|
||||||
processed_prompt.append("not_connected");
|
processed_prompt.append("not_connected");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (strstr(mysql_get_host_info(&mysql),"TCP/IP") ||
|
|
||||||
|
const char *host_info = mysql_get_host_info(&mysql);
|
||||||
|
if (strstr(host_info, "memory"))
|
||||||
|
{
|
||||||
|
processed_prompt.append( mysql.host );
|
||||||
|
}
|
||||||
|
else if (strstr(host_info,"TCP/IP") ||
|
||||||
!mysql.unix_socket)
|
!mysql.unix_socket)
|
||||||
add_int_to_prompt(mysql.port);
|
add_int_to_prompt(mysql.port);
|
||||||
else
|
else
|
||||||
@ -3247,6 +3254,7 @@ static const char* construct_prompt()
|
|||||||
processed_prompt.append(pos ? pos+1 : mysql.unix_socket);
|
processed_prompt.append(pos ? pos+1 : mysql.unix_socket);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'U':
|
case 'U':
|
||||||
if (!full_username)
|
if (!full_username)
|
||||||
|
@ -142,7 +142,7 @@ MI_INFO *mi_open(const char *name, int mode, uint open_flags)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
/* Don't call realpath() if the name can't be a link */
|
/* Don't call realpath() if the name can't be a link */
|
||||||
if (strcmp(name_buff, org_name) ||
|
if (!strcmp(name_buff, org_name) ||
|
||||||
my_readlink(index_name, org_name, MYF(0)) == -1)
|
my_readlink(index_name, org_name, MYF(0)) == -1)
|
||||||
(void) strmov(index_name, org_name);
|
(void) strmov(index_name, org_name);
|
||||||
(void) fn_format(data_name,org_name,"",MI_NAME_DEXT,2+4+16);
|
(void) fn_format(data_name,org_name,"",MI_NAME_DEXT,2+4+16);
|
||||||
|
@ -849,3 +849,15 @@ utf8_bin 6109
|
|||||||
utf8_bin 61
|
utf8_bin 61
|
||||||
utf8_bin 6120
|
utf8_bin 6120
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
user varchar(255) NOT NULL default ''
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||||
|
INSERT INTO t1 VALUES ('one'),('two');
|
||||||
|
SELECT CHARSET('a');
|
||||||
|
CHARSET('a')
|
||||||
|
utf8
|
||||||
|
SELECT user, CONCAT('<', user, '>') AS c FROM t1;
|
||||||
|
user c
|
||||||
|
one <one>
|
||||||
|
two <two>
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -681,3 +681,15 @@ SET collation_connection='utf8_general_ci';
|
|||||||
-- source include/ctype_filesort.inc
|
-- source include/ctype_filesort.inc
|
||||||
SET collation_connection='utf8_bin';
|
SET collation_connection='utf8_bin';
|
||||||
-- source include/ctype_filesort.inc
|
-- source include/ctype_filesort.inc
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #7874 CONCAT() gives wrong results mixing
|
||||||
|
# latin1 field and utf8 string literals
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
user varchar(255) NOT NULL default ''
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
|
||||||
|
INSERT INTO t1 VALUES ('one'),('two');
|
||||||
|
SELECT CHARSET('a');
|
||||||
|
SELECT user, CONCAT('<', user, '>') AS c FROM t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
@ -26,9 +26,11 @@
|
|||||||
/*
|
/*
|
||||||
Reads the content of a symbolic link
|
Reads the content of a symbolic link
|
||||||
If the file is not a symbolic link, return the original file name in to.
|
If the file is not a symbolic link, return the original file name in to.
|
||||||
Returns: 0 if table was a symlink,
|
|
||||||
1 if table was a normal file
|
RETURN
|
||||||
-1 on error.
|
0 If filename was a symlink, (to will be set to value of symlink)
|
||||||
|
1 If filename was a normal file (to will be set to filename)
|
||||||
|
-1 on error.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int my_readlink(char *to, const char *filename, myf MyFlags)
|
int my_readlink(char *to, const char *filename, myf MyFlags)
|
||||||
@ -58,6 +60,7 @@ int my_readlink(char *to, const char *filename, myf MyFlags)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
to[length]=0;
|
to[length]=0;
|
||||||
|
DBUG_PRINT("exit" ,("result: %d", result));
|
||||||
DBUG_RETURN(result);
|
DBUG_RETURN(result);
|
||||||
#endif /* HAVE_READLINK */
|
#endif /* HAVE_READLINK */
|
||||||
}
|
}
|
||||||
|
@ -809,7 +809,10 @@ int merge_many_buff(SORTPARAM *param, uchar *sort_buffer,
|
|||||||
}
|
}
|
||||||
close_cached_file(to_file); // This holds old result
|
close_cached_file(to_file); // This holds old result
|
||||||
if (to_file == t_file)
|
if (to_file == t_file)
|
||||||
|
{
|
||||||
*t_file=t_file2; // Copy result file
|
*t_file=t_file2; // Copy result file
|
||||||
|
setup_io_cache(t_file);
|
||||||
|
}
|
||||||
|
|
||||||
DBUG_RETURN(*maxbuffer >= MERGEBUFF2); /* Return 1 if interrupted */
|
DBUG_RETURN(*maxbuffer >= MERGEBUFF2); /* Return 1 if interrupted */
|
||||||
} /* merge_many_buff */
|
} /* merge_many_buff */
|
||||||
|
@ -275,7 +275,8 @@ String *Item_func_concat::val_str(String *str)
|
|||||||
current_thd->variables.max_allowed_packet);
|
current_thd->variables.max_allowed_packet);
|
||||||
goto null;
|
goto null;
|
||||||
}
|
}
|
||||||
if (res->alloced_length() >= res->length()+res2->length())
|
if (!args[0]->const_item() &&
|
||||||
|
res->alloced_length() >= res->length()+res2->length())
|
||||||
{ // Use old buffer
|
{ // Use old buffer
|
||||||
res->append(*res2);
|
res->append(*res2);
|
||||||
}
|
}
|
||||||
|
@ -912,6 +912,7 @@ int yylex(void *arg, void *yythd)
|
|||||||
if ((thd->client_capabilities & CLIENT_MULTI_STATEMENTS) &&
|
if ((thd->client_capabilities & CLIENT_MULTI_STATEMENTS) &&
|
||||||
(thd->command != COM_PREPARE))
|
(thd->command != COM_PREPARE))
|
||||||
{
|
{
|
||||||
|
lex->safe_to_cache_query=0;
|
||||||
lex->found_colon=(char*)lex->ptr;
|
lex->found_colon=(char*)lex->ptr;
|
||||||
thd->server_status |= SERVER_MORE_RESULTS_EXISTS;
|
thd->server_status |= SERVER_MORE_RESULTS_EXISTS;
|
||||||
lex->next_state=MY_LEX_END;
|
lex->next_state=MY_LEX_END;
|
||||||
|
@ -4008,7 +4008,8 @@ insert:
|
|||||||
{
|
{
|
||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
lex->sql_command= SQLCOM_INSERT;
|
lex->sql_command= SQLCOM_INSERT;
|
||||||
lex->duplicates= DUP_ERROR;
|
lex->duplicates= DUP_ERROR;
|
||||||
|
mysql_init_select(lex);
|
||||||
/* for subselects */
|
/* for subselects */
|
||||||
lex->lock_option= (using_update_log) ? TL_READ_NO_INSERT : TL_READ;
|
lex->lock_option= (using_update_log) ? TL_READ_NO_INSERT : TL_READ;
|
||||||
lex->select_lex.resolve_mode= SELECT_LEX::INSERT_MODE;
|
lex->select_lex.resolve_mode= SELECT_LEX::INSERT_MODE;
|
||||||
@ -4028,6 +4029,7 @@ replace:
|
|||||||
LEX *lex=Lex;
|
LEX *lex=Lex;
|
||||||
lex->sql_command = SQLCOM_REPLACE;
|
lex->sql_command = SQLCOM_REPLACE;
|
||||||
lex->duplicates= DUP_REPLACE;
|
lex->duplicates= DUP_REPLACE;
|
||||||
|
mysql_init_select(lex);
|
||||||
lex->select_lex.resolve_mode= SELECT_LEX::INSERT_MODE;
|
lex->select_lex.resolve_mode= SELECT_LEX::INSERT_MODE;
|
||||||
}
|
}
|
||||||
replace_lock_option insert2
|
replace_lock_option insert2
|
||||||
@ -4229,6 +4231,7 @@ delete:
|
|||||||
{
|
{
|
||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
lex->sql_command= SQLCOM_DELETE;
|
lex->sql_command= SQLCOM_DELETE;
|
||||||
|
mysql_init_select(lex);
|
||||||
lex->lock_option= lex->thd->update_lock_default;
|
lex->lock_option= lex->thd->update_lock_default;
|
||||||
lex->ignore= 0;
|
lex->ignore= 0;
|
||||||
lex->select_lex.init_order();
|
lex->select_lex.init_order();
|
||||||
@ -5321,6 +5324,7 @@ set:
|
|||||||
{
|
{
|
||||||
LEX *lex=Lex;
|
LEX *lex=Lex;
|
||||||
lex->sql_command= SQLCOM_SET_OPTION;
|
lex->sql_command= SQLCOM_SET_OPTION;
|
||||||
|
mysql_init_select(lex);
|
||||||
lex->option_type=OPT_SESSION;
|
lex->option_type=OPT_SESSION;
|
||||||
lex->var_list.empty();
|
lex->var_list.empty();
|
||||||
lex->one_shot_set= 0;
|
lex->one_shot_set= 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user