Commit graph

2382 commits

Author SHA1 Message Date
Georgi Kodinov
5b9a33aafe Bug #42434: license of mysys MD5 implementation is not GPL-compatible
Took the Xfree implementation (based on the same rewrite as the NDB one)
and added it instead of the current implementation.
Added a macro to make the calls to MD5 more streamlined.
2009-03-09 20:57:03 +02:00
He Zhenxing
e7605e338b BUG#22082 Slave hangs(holds mutex) on "disk full"
When disk is full, server may waiting for free space while
writing binlog, relay-log or MyISAM tables. The server will 
continue after user have freed some space. But the error
message printed was not quite clear about the how often the
error message is printed, and there will be a delay before
the server continue and user freeing space. And caused users
thinking that the server was hanging forever.

This patch fixed the problem by making the error messages
printed more clear. The error message is split into two part,
the first part will only be printed once, and the second part
will be printed very 10 times.

Message first part:
Disk is full writing '<filename>' (Errcode: <errorno>). Waiting
for someone to free space... (Expect up to 60 secs delay for 
server to continue after freeing disk space)

Message second part:
Retry in 60 secs, Message reprinted in 600 secs
2009-03-06 17:32:00 +08:00
Alexey Kopytov
5cf0d591eb Automerge. 2009-02-25 10:48:05 +02:00
Alexey Kopytov
d8130a35fb Fixed a build failure on Ubuntu 8.10 introduced by the patch
for bug #15936.

On some platforms fenv.h may #undef the min/max macros
defined in my_global.h.

Fixed by moving the #include directive for fenv.h from
mysqld.cc to my_global.h before definitions for min/max.
2009-02-25 10:36:11 +02:00
Chad MILLER
8d5286d273 Merge bug 39370 fix from bug tree. 2009-02-24 12:31:42 +02:00
Chad MILLER
db076da82a Bug#39370: wrong output for error code 153
Add all HA error numbers and descriptions to perror.

Add reminder to header.

This is already fixed in smarter ways in future codebases, and this 
codebase is unlikely to change, since new development is forbidden
here.
2009-02-24 12:05:37 +02:00
Alexey Kopytov
cebaf077d2 Fix for bug #15936: "round" differs on Windows to Unix
Both of our own implementations of rint(3) were inconsistent with the
most common behavior of rint() on those platforms that have it: round
to nearest, break ties by rounding to nearest even.

Fixed by leaving just one implementation of rint() in our source tree,
and changing its behavior to match the most common native
implementations on other platforms.
2009-02-23 14:28:26 +02:00
Sergey Glukhov
26e804d0a7 Bug#37575 UCASE fails on monthname
The MONTHNAME/DAYNAME functions
returns binary string, so the LOWER/UPPER functions
are not effective on the result of MONTHNAME/DAYNAME call.  
Character set of the MONTHNAME/DAYNAME function
result has been changed to connection character set.
2008-12-23 18:08:04 +04:00
Alexey Kopytov
5f7869a22a Fix for bug #27483: Casting 'scientific notation type' to 'unsigned
bigint' fails on windows.

Visual Studio does not take into account some x86 hardware limitations
which leads to incorrect results when converting large DOUBLE values
to BIGINT UNSIGNED ones.

Fixed by adding a workaround for double->ulonglong conversion on
Windows.
2008-12-03 19:15:39 +03:00
Alexey Botchkov
69657f972b Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
test_if_data_home_dir fixed to look into real path.
            Checks added to mi_open for symlinks into data home directory.

per-file messages:
        include/my_sys.h
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          my_is_symlink interface added
        include/myisam.h
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          myisam_test_invalid_symlink interface added
        myisam/mi_check.c
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          mi_open_datafile calls modified
        myisam/mi_open.c
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          code added to mi_open to check for symlinks into data home directory.
          mi_open_datafile now accepts 'original' file path to check if it's
          an allowed symlink.
        myisam/mi_static.c
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          myisam_test_invlaid_symlink defined
        myisam/myisamchk.c
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          mi_open_datafile call modified
        myisam/myisamdef.h
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          mi_open_datafile interface modified - 'real_path' parameter added
        mysql-test/r/symlink.test
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          error codes corrected as some patch now rejected pointing inside datahome
        mysql-test/r/symlink.result
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          error messages corrected in the result
        mysys/my_symlink.c
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          my_is_symlink() implementsd
          my_realpath() now returns the 'realpath' even if a file isn't a symlink
        sql/mysql_priv.h
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          test_if_data_home_dir interface
        sql/mysqld.cc
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          myisam_test_invalid_symlik set with the 'test_if_data_home_dir'
        sql/sql_parse.cc
          Bug#32167 another privilege bypass with DATA/INDEX DIRECTORY.
          
          error messages corrected
          test_if_data_home_dir code fixed
2008-08-22 17:31:53 +05:00
Timothy Smith
72209ac093 Bug #38180 options are read from ~/my.cnf instead of ~/.my.cnf
Pull out some of unpack_dirname() into normalize_dirname(); this
new function does not expand "~" to the home directory.  Use this
function in unpack_dirname(), and use it during init_default_directories()
to remove duplicate entries without losing track of which directory
is a user's home dir.
2008-07-16 16:58:45 -06:00
gkodinov/kgeorge@magare.gmz
51cdfd34fd Merge bk-internal:/home/bk/mysql-5.0
into  magare.gmz:/home/kgeorge/mysql/work/merge-5.0-bugteam
2008-05-05 15:04:26 +03:00
iggy@amd64.(none)
27663116b4 Correct failing build. 2008-04-28 14:58:32 -04:00
cmiller@zippy.cornsilk.net
61a528c0b2 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug26294/my50-bug26294
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-build
2008-04-03 13:19:55 -04:00
cmiller@zippy.cornsilk.net
9ff7a0cedc Bug#26294: library name conflict between MySQL 4.x, 5.0 and Qt 3.3
When linking with some external programs, "multiple definition 
of `init_time'"

Rename init_time() to my_init_time() to avoid collision with other
libraries (particularly libmng).
2008-04-03 11:32:00 -04:00
iggy@amd64.(none)
b9877b84ac Merge amd64.(none):/src/mysql-5.0-bugteam
into  amd64.(none):/src/bug26243/my50-bug26243
2008-03-28 16:01:05 -04:00
iggy@amd64.(none)
79e434bc67 Bug#26243 mysql command line crash after control-c
- Backported the 5.1 DBUG to 5.0.
- Avoid memory cleanup race on Windows client for CTRL-C
2008-03-28 14:02:27 -04:00
tnurnberg@white.intern.koehntopp.de
282825af33 Merge mysql.com:/misc/mysql/mysql-5.0
into  mysql.com:/misc/mysql/mysql-5.0-opt
2008-03-27 23:35:56 +01:00
gshchepa/uchum@host.loc
7edeebc9ab Merge host.loc:/home/uchum/work/mysql-5.0
into  host.loc:/home/uchum/work/5.0-opt
2008-03-27 15:52:55 +04:00
tsmith@rhel5-ia64-a.mysql.com
95c8fb8db2 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  rhel5-ia64-a.mysql.com:/data0/tsmith/build/50
2008-03-27 08:50:54 +01:00
gkodinov/kgeorge@macbook.gmz
ff0aac178d Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes)
The bool data type was redefined to BOOL (4 bytes on windows).
Removed the #define and fixed some of the warnings that were uncovered
by this.
Note that the fix also disables 2 warnings :
4800 : 'type' : forcing value to bool 'true' or 'false' (performance warning)
4805: 'operation' : unsafe mix of type 'type' and type 'type' in operation

These warnings will be handled in a separate bug, as they are performance related or bogus.

Fixed to int the return type of functions that return more than 
2 distinct values.
2008-03-21 17:23:17 +02:00
davi@mysql.com/endora.local
3958a755b9 Bug#30960 processlist state '*** DEAD ***' on recent 5.0.48 windows builds
The problem is that unimplemented WIN32 version of pthread_kill
is returning ESRCH no matter the arguments, causing calls to
mysqld_list_processes to set the procinfo to dead because
pthread_kill returns non zero. The dead procinfo would show
up on a second invocation of show processlist.
2008-03-19 15:01:03 -03:00
joerg@trift2.
b399594a4a Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2008-03-14 14:32:01 +01:00
iggy@alf.(none)
52d337bae8 Bug #24992 Enabling Shared Memory support on Windows x64 causes client to fail
- Mistaken macro defintions cause mysys to read packets in the wrong order.
2008-02-28 23:53:01 -05:00
iggy@alf.(none)
efacf8caa6 Bug #23839 Multiple declarations of macros
- Remove duplicate macro defintions.
2008-02-27 16:17:05 -05:00
holyfoot/hf@hfmain.(none)
bf848358e5 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/25097/my50-25097
2008-02-27 13:43:41 +04:00
holyfoot/hf@mysql.com/hfmain.(none)
140ca59538 Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
There was no way to return an error from the client library
if no MYSQL connections was established.
So here i added variables to store that king of errors and
made functions like mysql_error(NULL) to return these.
2008-02-27 12:42:43 +04:00
mkindahl@dl145h.mysql.com
716c63ebaa Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl
into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
2008-01-30 11:25:54 +01:00
aelkin/elkin@koti.dsl.inet.fi
0ca3250e59 BUG#30435 loading large LOAD DATA INFILE breaks slave with
read_buffer_size set on master
BUG#33413 show binlog events fails if binlog has event size of close
          to max_allowed_packet


The size of Append_block replication event was determined solely by
read_buffer_size whereas the rest of replication code deals with
max_allowed_packet.
When the former parameter was set to larger than the latter there were
two artifacts: the master could not read events from binlog;
show master events did not show.

Fixed with 
- fragmenting the used io-cached buffer into pieces each size of less
  than max_allowed_packet (bug#30435)
- incrementing show-binlog-events handling thread's max_allowed_packet
  with the max estimated for the replication header size
2007-12-21 22:34:43 +02:00
gluh@eagle.(none)
e039595029 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-12-13 14:52:49 +04:00
df@pippilotta.erinye.com
45c93a5866 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
2007-12-10 10:42:58 +01:00
joerg@trift2.
fd5000f650 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2007-12-07 13:51:41 +01:00
tsmith@ramayana.hindu.god
8c5f194505 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
2007-12-07 03:51:23 -07:00
tsmith@ramayana.hindu.god
10cab933b2 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
2007-12-04 20:58:21 -07:00
tnurnberg@white.intern.koehntopp.de
55d6d04df0 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/misc/mysql/31177/50-31177
2007-12-02 01:48:43 +01:00
holyfoot/hf@hfmain.(none)
ad52a590cf Merge mysql.com:/home/hf/work/mrg/my41-mrg
into  mysql.com:/home/hf/work/mrg/my50-mrg
2007-11-30 22:29:34 +04:00
tnurnberg@mysql.com/white.intern.koehntopp.de
31d4e58ad4 Bug#31177: Server variables can't be set to their current values
Default values of variables were not subject to upper/lower bounds
and step, while setting variables was. Bounds and step are also
applied to defaults now; defaults are corrected quietly, values
given by the user are corrected, and a correction-warning is thrown
as needed. Lastly, very large values could wrap around, starting
from 0 again. They are bounded at the maximum value for the
respective data-type now if no lower maximum is specified in the
variable's definition.
2007-11-30 06:32:04 +01:00
kent@kent-amd64.(none)
36c5e5308a Merge mysql.com:/home/kent/bk/mac-os-x-universal/mysql-4.1-build
into  mysql.com:/home/kent/bk/mac-os-x-universal/mysql-5.0-build
2007-11-30 01:37:07 +01:00
kent@mysql.com/kent-amd64.(none)
666ec84bca my_global.h:
Added 64 bit Mac OS X hard coded settings, for universal binaries
2007-11-30 01:36:05 +01:00
kent@mysql.com/kent-amd64.(none)
611b737af3 Excluded verbose and bad change to Mac OS X universal binaries handling 2007-11-30 01:22:15 +01:00
kent@kent-amd64.(none)
c0b8aa419b Merge mysql.com:/home/kent/bk/mac-os-x-universal/mysql-4.1-build
into  mysql.com:/home/kent/bk/mac-os-x-universal/mysql-5.0-build
2007-11-29 23:44:16 +01:00
kent@mysql.com/kent-amd64.(none)
369d75dc75 my_global.h:
Added 64 bit Mac OS X hard coded settings, for universal binaries
2007-11-29 23:42:04 +01:00
gkodinov/kgeorge@magare.gmz
8c3d5135ba Bug #30355: Incorrect ordering of UDF results
There's currently no way of knowing the determinicity of an UDF.
And the optimizer and the sequence() UDFs were making wrong
assumptions about what the is_const member means.
Plus there was no implementation of update_system_tables()
causing the optimizer to overwrite the information returned by
the <udf>_init function.

Fixed by equating the assumptions about the semantics of 
is_const and providing a implementation of update_used_tables().
Added a TODO item for the UDF API change needed to make a better 
implementation.
2007-11-27 17:16:52 +02:00
davi@mysql.com/endora.local
cdad8669df Bug#29592 SQL Injection issue
Remove the mysql_odbc_escape_string() function. The function
has multi-byte character escaping issues, doesn't honor the
NO_BACKSLASH_ESCAPES mode and is not used anymore by the
Connector/ODBC as of 3.51.17.
2007-11-26 14:09:37 -02:00
holyfoot/hf@mysql.com/hfmain.(none)
68c6031472 Bug #31900 Wrong confusing comment in mysql_com.h header file.
comment fixed as we truly need const_item to be 1 to mark
constant function
2007-11-26 16:25:18 +04:00
joerg@trift2.
86674bc412 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2007-11-14 15:26:38 +01:00
svoj@mysql.com/june.mysql.com
c6abad79c8 BUG#29083 - test suite times out on OS X 64bit - also in older releases
The "mysql client in mysqld"(which is used by
replication and federated) should use alarms instead of setting
socket timeout value if the rest of the server uses alarm. By
always calling 'my_net_set_write_timeout'
or 'net_set_read_timeout' when changing the timeout value(s), the
selection whether to use alarms or timeouts will be handled by
ifdef's in those two functions.

This is minimal backport of patch for BUG#26664, which was pushed
to 5.0 and up.

Affects 4.1 only.
2007-11-09 16:05:01 +04:00
tsmith@ramayana.hindu.god
30b56973cb Merge ramayana.hindu.god:/home/tsmith/m/bk/build/50
into  ramayana.hindu.god:/home/tsmith/m/bk/build/b20748/50
2007-11-07 16:26:29 -07:00
tsmith@ramayana.hindu.god
ef59ca3d78 Bug #20748: Configuration files should not be read more than once
A user could not override system-wide settings in their ~/.my.cnf,
because the DEFAULT_SYSCONFDIR was being searched last.  Also, in
some configurations (especially when the --sysconfdir compile-time
option is set to /etc or /etc/mysql), the system-wide my.cnf file
was read multiple times, causing confusion and potential problems.

Rearrange default directories to conform to the manual and logic.
Move --sysconfdir=<path> (DEFAULT_SYSCONFDIR) from the last default
directory to the middle of the list.  $HOME/.my.cnf should be last,
so the user is able to override the system-wide settings.

Change init_default_directories() to remove duplicates from the
list.
2007-11-07 15:23:50 -07:00
istruewing@stella.local
cd49a77add Merge stella.local:/home2/mydev/mysql-5.0-amain
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-10-31 12:31:36 +01:00