mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 10:14:19 +01:00
merge
This commit is contained in:
commit
efb0dad5a8
14 changed files with 159 additions and 60 deletions
|
@ -26,7 +26,7 @@ debug_cflags="-DEXTRA_DEBUG -DFORCE_INIT_OF_VARS -DSAFEMALLOC -DSAFE_MUTEX -O2"
|
|||
|
||||
base_cxxflags="-felide-constructors -fno-exceptions -fno-rtti"
|
||||
|
||||
base_configs="--prefix=/usr/local/mysql --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-mysqld-ldflags=-all-static --disable-shared"
|
||||
base_configs="--prefix=/usr/local/mysql --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-mysqld-ldflags=-all-static"
|
||||
alpha_configs="" # not used yet
|
||||
pentium_configs=""
|
||||
sparc_configs=""
|
||||
|
|
|
@ -2,3 +2,4 @@ mwagner@work.mysql.com
|
|||
sasha@mysql.sashanet.com
|
||||
sasha@work.mysql.com
|
||||
tim@cane.mysql.fi
|
||||
monty@donna.mysql.com
|
||||
|
|
138
Docs/manual.texi
138
Docs/manual.texi
|
@ -223,6 +223,7 @@ Installing MySQL
|
|||
* OS/2:: OS/2 notes
|
||||
* MySQL binaries:: MySQL binaries
|
||||
* Post-installation:: Post-installation setup and testing
|
||||
* Installing many servers:: Installing many servers on the same machine
|
||||
* Upgrade:: Upgrading/Downgrading MySQL
|
||||
|
||||
Installing a MySQL Binary Distribution
|
||||
|
@ -854,6 +855,7 @@ Changes in release 4.0.x (Development; Alpha)
|
|||
|
||||
Changes in release 3.23.x (Stable)
|
||||
|
||||
* News-3.23.32::
|
||||
* News-3.23.31:: Changes in release 3.23.31
|
||||
* News-3.23.30:: Changes in release 3.23.30
|
||||
* News-3.23.29:: Changes in release 3.23.29
|
||||
|
@ -2343,6 +2345,8 @@ Mascon is a powerful Win32 GUI for the administering MySQL server databases.
|
|||
SuSE Linux (6.1 and above)
|
||||
@item @uref{http://www.redhat.com/}@*
|
||||
RedHat Linux (7.0 and above)
|
||||
@item @uref{http://distro.conectiva.com.br}
|
||||
Conectiva Linux (4.0 and above)
|
||||
@end itemize
|
||||
|
||||
@subheading Web Development Tools that Support @strong{MySQL}
|
||||
|
@ -3836,7 +3840,10 @@ We will provide hints on optimizing your system and your queries.
|
|||
You are allowed to call a @strong{MySQL} developer (in moderation) and
|
||||
discuss your @strong{MySQL}-related problems. This option is however
|
||||
only to be used as a last result during an emergency after we have
|
||||
failed to grasp the total problem with email.
|
||||
failed to grasp the total problem with email. To make efficient
|
||||
use of our time we need to first get all facts about the problem,
|
||||
before talking on phone, to be able to work as efficiently as possible on
|
||||
solving the problem.
|
||||
@end itemize
|
||||
|
||||
@node Extended login support, , Login support, Support
|
||||
|
@ -3897,6 +3904,7 @@ rate that is at least 20 % less than our standard rates.
|
|||
* OS/2:: OS/2 notes
|
||||
* MySQL binaries:: MySQL binaries
|
||||
* Post-installation:: Post-installation setup and testing
|
||||
* Installing many servers:: Installing many servers on the same machine
|
||||
* Upgrade:: Upgrading/Downgrading MySQL
|
||||
@end menu
|
||||
|
||||
|
@ -8719,7 +8727,7 @@ and remove any @code{-fomit-frame-pointer} options.
|
|||
@cindex post-installation, setup and testing
|
||||
@cindex testing, post-installation
|
||||
@cindex setup, post-installation
|
||||
@node Post-installation, Upgrade, MySQL binaries, Installing
|
||||
@node Post-installation, Installing many servers, MySQL binaries, Installing
|
||||
@section Post-installation Setup and Testing
|
||||
|
||||
@menu
|
||||
|
@ -9042,28 +9050,7 @@ the same time). Generally the problem that occurs when you try to run the
|
|||
second server is that it tries to use the same socket and port as the old one.
|
||||
In this case you will get the error message: @code{Can't start server: Bind on
|
||||
TCP/IP port: Address already in use} or @code{Can't start server : Bind on
|
||||
unix socket...} You can start the new server with a different socket and
|
||||
port as follows:
|
||||
|
||||
@tindex MYSQL_UNIX_PORT environment variable
|
||||
@tindex MYSQL_TCP_PORT environment variable
|
||||
@tindex Environment variable, MYSQL_UNIX_PORT
|
||||
@tindex Environment variable, MYSQL_TCP_PORT
|
||||
@example
|
||||
shell> MYSQL_UNIX_PORT=/tmp/mysqld-new.sock
|
||||
shell> MYSQL_TCP_PORT=3307
|
||||
shell> export MYSQL_UNIX_PORT MYSQL_TCP_PORT
|
||||
shell> scripts/mysql_install_db
|
||||
shell> bin/safe_mysqld &
|
||||
@end example
|
||||
|
||||
The environment variables appendix includes a list of other environment
|
||||
variables you can use to affect @code{mysqld}. @xref{Environment variables}.
|
||||
|
||||
After this, you should edit your server boot script to start both daemons
|
||||
with different sockets and ports. For example, it could invoke
|
||||
@code{safe_mysqld} twice, but with different @code{--socket}, @code{--port},
|
||||
and @code{--basedir} options for each invocation.
|
||||
unix socket...}. @xref{Installing many servers}.
|
||||
|
||||
@item You don't have write access to @file{/tmp}
|
||||
@cindex write access, tmp
|
||||
|
@ -9583,8 +9570,8 @@ Output version information and exit.
|
|||
@node Option files, , Command-line options, Post-installation
|
||||
@subsection Option Files
|
||||
|
||||
@strong{MySQL} Version 3.22 can read default startup options for the server and
|
||||
for clients from option files.
|
||||
@strong{MySQL} Version 3.22 can read default startup options for the
|
||||
server and for clients from option files.
|
||||
|
||||
@strong{MySQL} reads default options from the following files on Unix:
|
||||
|
||||
|
@ -9746,7 +9733,80 @@ shell> my_print_defaults client mysql
|
|||
|
||||
The above output contains all options for the groups 'client' and 'mysql'.
|
||||
|
||||
@node Upgrade, , Post-installation, Installing
|
||||
@node Installing many servers, Upgrade, Post-installation, Installing
|
||||
@section Installing many servers on the same machine
|
||||
@cindex post-install, many servers
|
||||
@cindex Installing many servers
|
||||
@cindex Starting many servers
|
||||
|
||||
In some cases you may want to have many different @code{mysqld} deamons
|
||||
(servers) running on the same machine. You may for example want to run
|
||||
a new version of @code{MySQL} for testing together with an old version
|
||||
that is in production. Another case is when you want to give different
|
||||
users access to different mysqld servers that they manage themself.
|
||||
|
||||
One way to get a new server running is by starting it with a different
|
||||
socket and port as follows:
|
||||
|
||||
@tindex MYSQL_UNIX_PORT environment variable
|
||||
@tindex MYSQL_TCP_PORT environment variable
|
||||
@tindex Environment variable, MYSQL_UNIX_PORT
|
||||
@tindex Environment variable, MYSQL_TCP_PORT
|
||||
@example
|
||||
shell> MYSQL_UNIX_PORT=/tmp/mysqld-new.sock
|
||||
shell> MYSQL_TCP_PORT=3307
|
||||
shell> export MYSQL_UNIX_PORT MYSQL_TCP_PORT
|
||||
shell> scripts/mysql_install_db
|
||||
shell> bin/safe_mysqld &
|
||||
@end example
|
||||
|
||||
The environment variables appendix includes a list of other environment
|
||||
variables you can use to affect @code{mysqld}. @xref{Environment variables}.
|
||||
|
||||
The above is the quick and dirty way that one commonly use for testing.
|
||||
The nice thing with this is that all connections you do in the above shell
|
||||
will automaticly be directed to the new running server!
|
||||
|
||||
If you need to do this more permanently, you should create an own option
|
||||
file for each server. @xref{Option files}. In your startup script that
|
||||
is executed at boot time (mysql.server?) you should specify for both
|
||||
servers:
|
||||
|
||||
@code{safe_mysqld --default-file=path-to-option-file}
|
||||
|
||||
At least the following options should be different per server:
|
||||
|
||||
@table @code
|
||||
@item port=#
|
||||
@item socket=path
|
||||
@item pid-file=path
|
||||
@end table
|
||||
|
||||
The following options should be different, if they are used:
|
||||
|
||||
@table @code
|
||||
@item log=path
|
||||
@item log-bin=path
|
||||
@item log-update=path
|
||||
@item log-isam=path
|
||||
@item bdb-logdir=path
|
||||
@end table
|
||||
|
||||
If you want more performance, you can also specify the following differently:
|
||||
|
||||
@table @code
|
||||
@item tmpdir=path
|
||||
@item bdb-tmpdir=path
|
||||
@end table
|
||||
|
||||
@xref{Command-line options}.
|
||||
|
||||
If you are installing binary @strong{MySQL} versions (.tar files) and
|
||||
start them with @code{./bin/safe_mysqld} then in most cases the only
|
||||
option you need to add/change is the @code{socket} and @code{port}
|
||||
argument to @code{safe_mysqld}.
|
||||
|
||||
@node Upgrade, , Installing many servers, Installing
|
||||
@section Upgrading/Downgrading MySQL
|
||||
@cindex upgrading
|
||||
@cindex downgrading
|
||||
|
@ -9831,7 +9891,11 @@ all your tables with @code{isamchk -r}, as we have made some changes in
|
|||
the sort order!
|
||||
@item The default return type of @code{IF} will now depend on both arguments
|
||||
and not only the first argument.
|
||||
@item @code{AUTO_INCREMENT} will not work with negative numbers.
|
||||
@item @code{AUTO_INCREMENT} will not work with negative numbers. The reason
|
||||
for this is that negative numbers caused problems when wrapping from -1 to 0.
|
||||
@code{AUTO_INCREMENT} is now for MyISAM tables handled at a lower level and
|
||||
is much faster than before. For MyISAM tables old numbers are also not reused
|
||||
anymore, even if you delete some rows from the table.
|
||||
@item @code{INNER}, @code{DELAYED}, @code{RIGHT}, @code{CASE}, @code{THEN}, @code{WHEN}, @code{ELSE}, @code{END} and @code{WHEN} are now reserved words.
|
||||
@item @code{FLOAT(X)} is now a true floating-point type and not a value with
|
||||
a fixed number of decimals.
|
||||
|
@ -40551,6 +40615,18 @@ All new features are being developed in the 4.0 version. Only
|
|||
bug fixes and minor enhancements to existing features will be
|
||||
added to 3.23.
|
||||
|
||||
The replication code and BerkeleyDB code is still not as tested and as
|
||||
the rest of the code, so we will probably need to do a couple of future
|
||||
releases of 3.23 with small fixes for this part of the code. As long as
|
||||
you don't use these features, you should be quite safe with
|
||||
@strong{MySQL} 3.23!
|
||||
|
||||
Note that the above doesn't mean that replication or Berkeley DB doesn't
|
||||
work; We have done a lot of testing of all code, including replication
|
||||
and BDB without finding any problems. It only means that not as many
|
||||
users uses this code as the rest of the code and because of this we are
|
||||
not yet 100 % confident in this code.
|
||||
|
||||
@menu
|
||||
* News-3.23.32:: Changes in release 3.23.32
|
||||
* News-3.23.31:: Changes in release 3.23.31
|
||||
|
@ -40591,6 +40667,12 @@ added to 3.23.
|
|||
@appendixsubsec Changes in release 3.23.32
|
||||
@itemize @bullet
|
||||
@item
|
||||
Added missing @file{my_config.h} to RPM distribution.
|
||||
@item
|
||||
@code{TRIM("foo" from "foo")} didn't return an empty string.
|
||||
@item
|
||||
Added @code{--with-version-suffix} to configure.
|
||||
@item
|
||||
Added MASTER_POS_WAIT()
|
||||
@end itemize
|
||||
|
||||
|
|
|
@ -823,7 +823,7 @@ AC_DEFUN([MYSQL_CHECK_BDB_VERSION], [
|
|||
bdb_version_ok=yes
|
||||
# This is ugly, but about as good as it can get
|
||||
elif test $db_major -eq 3 && test $db_minor -eq 2 && test $db_patch -eq 3 &&\
|
||||
grep 'DB_VERSION_STRING.*g: ' [$1] > /dev/null
|
||||
grep 'DB_VERSION_STRING.*h: ' [$1] > /dev/null
|
||||
then
|
||||
bdb_version_ok=yes
|
||||
else
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
#include "my_readline.h"
|
||||
#include <signal.h>
|
||||
|
||||
const char *VER="11.11";
|
||||
const char *VER="11.12";
|
||||
|
||||
gptr sql_alloc(unsigned size); // Don't use mysqld alloc for these
|
||||
void sql_element_free(void *ptr);
|
||||
|
@ -521,7 +521,7 @@ static void usage(int version)
|
|||
puts(" -W, --pipe Use named pipes to connect to server");
|
||||
#endif
|
||||
printf("\n\
|
||||
-P --port=... Port number to use for connection.\n\
|
||||
-P, --port=... Port number to use for connection.\n\
|
||||
-q, --quick Don't cache result, print it row by row. This may\n\
|
||||
slow down the server if the output is suspended.\n\
|
||||
Doesn't use history file.\n\
|
||||
|
@ -530,7 +530,7 @@ static void usage(int version)
|
|||
-S --socket=... Socket file to use for connection.\n");
|
||||
#include "sslopt-usage.h"
|
||||
printf("\
|
||||
-t --table Output in table format.\n\
|
||||
-t, --table Output in table format.\n\
|
||||
-T, --debug-info Print some debug info at exit.\n\
|
||||
--tee=... Append everything into outfile. See interactive help\n\
|
||||
(\\h) also. Does not work in batch mode.\n");
|
||||
|
|
|
@ -32,6 +32,8 @@ concat(':',trim(BOTH 'ab' FROM 'ababmyabab'),':',trim(BOTH '*' FROM '***sql'),':
|
|||
:my:sql:
|
||||
concat(':',trim(LEADING '.*' FROM '.*my'),':',trim(TRAILING '.*' FROM 'sql.*.*'),':')
|
||||
:my:sql:
|
||||
TRIM("foo" FROM "foo") TRIM("foo" FROM "foook") TRIM("foo" FROM "okfoo")
|
||||
ok ok
|
||||
insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
|
||||
this is a test
|
||||
replace('aaaa','a','b') replace('aaaa','aa','b') replace('aaaa','a','bb') replace('aaaa','','b') replace('bbbb','a','c')
|
||||
|
|
|
@ -22,6 +22,7 @@ select concat(':',trim(LEADING FROM ' left'),':',trim(TRAILING FROM ' right '),'
|
|||
select concat(':',trim(' m '),':',trim(BOTH FROM ' y '),':',trim('*' FROM '*s*'),':');
|
||||
select concat(':',trim(BOTH 'ab' FROM 'ababmyabab'),':',trim(BOTH '*' FROM '***sql'),':');
|
||||
select concat(':',trim(LEADING '.*' FROM '.*my'),':',trim(TRAILING '.*' FROM 'sql.*.*'),':');
|
||||
select TRIM("foo" FROM "foo"), TRIM("foo" FROM "foook"), TRIM("foo" FROM "okfoo");
|
||||
|
||||
select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
|
||||
select replace('aaaa','a','b'),replace('aaaa','aa','b'),replace('aaaa','a','bb'),replace('aaaa','','b'),replace('bbbb','a','c');
|
||||
|
|
|
@ -100,7 +100,7 @@ char *get_charsets_dir(char *buf)
|
|||
DBUG_ENTER("get_charsets_dir");
|
||||
|
||||
if (charsets_dir != NULL)
|
||||
strnmov(buf, charsets_dir, FN_REFLEN);
|
||||
strmake(buf, charsets_dir, FN_REFLEN-1);
|
||||
else
|
||||
{
|
||||
if (test_if_hard_path(sharedir) ||
|
||||
|
|
|
@ -57,7 +57,7 @@ my_string fn_format(my_string to, const char *name, const char *dsk,
|
|||
name+=(length=dirname_part(dev,(startpos=(my_string) name)));
|
||||
if (length == 0 || flag & 1)
|
||||
{
|
||||
(void) strnmov(dev,dsk, sizeof(dev) - 2);
|
||||
(void) strmake(dev,dsk, sizeof(dev) - 2);
|
||||
/* Use given directory */
|
||||
convert_dirname(dev); /* Fix to this OS */
|
||||
}
|
||||
|
@ -100,7 +100,7 @@ my_string fn_format(my_string to, const char *name, const char *dsk,
|
|||
bmove(buff,(char*) name,length); /* Save name for last copy */
|
||||
name=buff;
|
||||
}
|
||||
pos=strnmov(strmov(to,dev),name,length);
|
||||
pos=strmake(strmov(to,dev),name,length);
|
||||
#ifdef FN_UPPER_CASE
|
||||
caseup_str(to);
|
||||
#endif
|
||||
|
@ -117,7 +117,7 @@ my_string fn_format(my_string to, const char *name, const char *dsk,
|
|||
if (flag & 32 || (!lstat(to,&stat_buff) && S_ISLNK(stat_buff.st_mode)))
|
||||
{
|
||||
if (realpath(to,buff))
|
||||
strnmov(to,buff,FN_REFLEN-1);
|
||||
strmake(to,buff,FN_REFLEN-1);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -69,7 +69,7 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
|
|||
}
|
||||
if ((res=tempnam((char*) dir,(char *) prefix)))
|
||||
{
|
||||
strnmov(to,res,FN_REFLEN);
|
||||
strmake(to,res,FN_REFLEN-1);
|
||||
(*free)(res);
|
||||
file=my_create(to,0, mode, MyFlags);
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
|
|||
dir=getenv("TMPDIR");
|
||||
if ((res=tempnam((char*) dir,(char *) prefix)))
|
||||
{
|
||||
strnmov(to,res,FN_REFLEN);
|
||||
strmake(to,res,FN_REFLEN-1);
|
||||
(*free)(res);
|
||||
file=my_create(to, 0, mode, MyFlags);
|
||||
}
|
||||
|
@ -130,7 +130,7 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
|
|||
}
|
||||
if ((res=tempnam((char*) dir, (char*) prefix)))
|
||||
{
|
||||
strnmov(to,res,FN_REFLEN);
|
||||
strmake(to,res,FN_REFLEN-1);
|
||||
(*free)(res);
|
||||
file=my_create(to,0,
|
||||
(int) (O_RDWR | O_BINARY | O_TRUNC |
|
||||
|
|
|
@ -38,7 +38,7 @@ fi
|
|||
# This should really be integrated with automake and not duplicate the
|
||||
# installation list.
|
||||
|
||||
BASE=$TMP/my_dist
|
||||
BASE=$TMP/my_dist$SUFFIX
|
||||
|
||||
if [ -d $BASE ] ; then
|
||||
rm -r -f $BASE
|
||||
|
@ -59,10 +59,28 @@ do
|
|||
done
|
||||
|
||||
for i in extra/comp_err extra/replace extra/perror extra/resolveip \
|
||||
extra/my_print_defaults isam/isamchk isam/pack_isam myisam/myisamchk myisam/myisampack sql/mysqld sql/mysqlbinlog \
|
||||
client/mysql sql/mysqld sql/mysqld.sym.gz client/mysqlshow \
|
||||
client/mysqladmin client/mysqldump client/mysqlimport client/mysqltest \
|
||||
client/.libs/mysql client/.libs/mysqlshow client/.libs/mysqladmin client/.libs/mysqldump client/.libs/mysqlimport client/.libs/mysqltest
|
||||
extra/my_print_defaults isam/isamchk isam/pack_isam myisam/myisamchk \
|
||||
myisam/myisampack sql/mysqld sql/mysqlbinlog \
|
||||
client/mysql sql/mysqld client/mysqlshow \
|
||||
client/mysqladmin client/mysqldump client/mysqlimport client/mysqltest \
|
||||
client/.libs/mysql client/.libs/mysqlshow client/.libs/mysqladmin \
|
||||
client/.libs/mysqldump client/.libs/mysqlimport client/.libs/mysqltest
|
||||
do
|
||||
if [ -f $i ]
|
||||
then
|
||||
cp -p $i $BASE/bin
|
||||
strip $BASE/bin
|
||||
fi
|
||||
done
|
||||
|
||||
for i in sql/mysqld.sym.gz
|
||||
if [ -f $i ]
|
||||
then
|
||||
cp -p $i $BASE/bin
|
||||
fi
|
||||
done
|
||||
|
||||
for i in libmysql/.libs/libmysqlclient.a libmysql/.libs/libmysqlclient.so* libmysql/libmysqlclient.* libmysql_r/.libs/libmysqlclient_r.a libmysql_r/.libs/libmysqlclient_r.so* libmysql_r/libmysqlclient_r.* mysys/libmysys.a strings/libmystrings.a dbug/libdbug.a $BASE/lib
|
||||
do
|
||||
if [ -f $i ]
|
||||
then
|
||||
|
@ -75,7 +93,7 @@ rm $BASE/include/Makefile*; rm $BASE/include/*.in
|
|||
|
||||
cp -p tests/*.res tests/*.tst tests/*.pl $BASE/tests
|
||||
cp -p support-files/* $BASE/support-files
|
||||
cp -p libmysql/.libs/libmysqlclient.a libmysql/.libs/libmysqlclient.so* libmysql/libmysqlclient.* libmysql_r/.libs/libmysqlclient_r.a libmysql_r/.libs/libmysqlclient_r.so* libmysql_r/libmysqlclient_r.* mysys/libmysys.a strings/libmystrings.a dbug/libdbug.a $BASE/lib
|
||||
|
||||
cp -r -p sql/share/* $BASE/share/mysql
|
||||
rm -f $BASE/share/mysql/Makefile* $BASE/share/mysql/*/*.OLD
|
||||
|
||||
|
@ -106,7 +124,7 @@ if [ -d $BASE/sql-bench/SCCS ] ; then
|
|||
fi
|
||||
|
||||
# Change the distribution to a long descriptive name
|
||||
NEW_NAME=mysql-$version-$system-$machine$SUFFIX
|
||||
NEW_NAME=mysql@MYSQL_SERVER_SUFFIX@-$version-$system-$machine$SUFFIX
|
||||
BASE2=$TMP/$NEW_NAME
|
||||
rm -r -f $BASE2
|
||||
mv $BASE $BASE2
|
||||
|
|
|
@ -375,8 +375,8 @@ int handler::ha_open(const char *name, int mode, int test_if_locked)
|
|||
{
|
||||
int error;
|
||||
DBUG_ENTER("handler::open");
|
||||
DBUG_PRINT("enter",("db_type: %d db_stat: %d mode: %d lock_test: %d",
|
||||
table->db_type, table->db_stat, mode, test_if_locked));
|
||||
DBUG_PRINT("enter",("name: %s db_type: %d db_stat: %d mode: %d lock_test: %d",
|
||||
name, table->db_type, table->db_stat, mode, test_if_locked));
|
||||
|
||||
if ((error=open(name,mode,test_if_locked)))
|
||||
{
|
||||
|
|
|
@ -930,7 +930,7 @@ String *Item_func_trim::val_str(String *str)
|
|||
char *ptr=(char*) res->ptr();
|
||||
char *end=ptr+res->length();
|
||||
const char *r_ptr=remove_str->ptr();
|
||||
while (ptr+remove_length < end && !memcmp(ptr,r_ptr,remove_length))
|
||||
while (ptr+remove_length <= end && !memcmp(ptr,r_ptr,remove_length))
|
||||
ptr+=remove_length;
|
||||
#ifdef USE_MB
|
||||
if (use_mb(default_charset_info) && !binary)
|
||||
|
@ -954,7 +954,7 @@ String *Item_func_trim::val_str(String *str)
|
|||
else
|
||||
#endif /* USE_MB */
|
||||
{
|
||||
while (ptr + remove_length < end &&
|
||||
while (ptr + remove_length <= end &&
|
||||
!memcmp(end-remove_length,r_ptr,remove_length))
|
||||
end-=remove_length;
|
||||
}
|
||||
|
|
|
@ -275,7 +275,7 @@ char mysql_real_data_home[FN_REFLEN],
|
|||
blob_newline,f_fyllchar,max_sort_char,*mysqld_user,*mysqld_chroot,
|
||||
*opt_init_file;
|
||||
char *opt_bin_logname = 0; // this one needs to be seen in sql_parse.cc
|
||||
char server_version[50]=MYSQL_SERVER_VERSION;
|
||||
char server_version[60]=MYSQL_SERVER_VERSION;
|
||||
const char *first_keyword="first";
|
||||
const char **errmesg; /* Error messages */
|
||||
const char *myisam_recover_options_str="OFF";
|
||||
|
@ -1471,15 +1471,10 @@ int main(int argc, char **argv)
|
|||
strmov(glob_hostname,"mysql");
|
||||
strmov(pidfile_name,glob_hostname);
|
||||
strmov(strcend(pidfile_name,'.'),".pid"); // Add extension
|
||||
strcat(server_version, MYSQL_SERVER_SUFFIX);
|
||||
#ifdef DEMO_VERSION
|
||||
strcat(server_version,"-demo");
|
||||
#endif
|
||||
#ifdef SHAREWARE_VERSION
|
||||
strcat(server_version,"-shareware");
|
||||
#endif
|
||||
#ifndef DBUG_OFF
|
||||
strcat(server_version,"-debug");
|
||||
strxmov(strend(server_version),MYSQL_SERVER_SUFFIX,"-debug",NullS);
|
||||
#else
|
||||
strmov(strend(server_version),MYSQL_SERVER_SUFFIX);
|
||||
#endif
|
||||
#ifdef _CUSTOMSTARTUPCONFIG_
|
||||
if (_cust_check_startup())
|
||||
|
|
Loading…
Add table
Reference in a new issue