summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* merge of 5.1-main into mysql-trunk.Guilhem Bichot2009-08-12146-690/+28994
|\ | | | | | | | | Changes to ha_innodb.cc are not propagated to plugin, they will come back via Oracle/Innobase if needed.
| * merge fix to define __NT__ on WindowsVladislav Vaintroub2009-08-111-3/+3
| |\
| | * Always compile with __NT__ on windows. in 5.1 itthis #define isVladislav Vaintroub2009-08-111-3/+3
| | | | | | | | | | | | | | | widely used, in replication (delete_allow_opened) and for named pipe support. We do not support Win9x anymore.
| * | Merge from mysql-5.1-bugteam.Davi Arnaut2009-08-1116-33/+1616
| |\ \
| | * | Update README.Davi Arnaut2009-08-111-2/+1247
| | | |
| | * | Manual merge.Davi Arnaut2009-08-104-8/+40
| | |\ \
| | | * | Bug#45010: invalid memory reads during parsing some strange statementsDavi Arnaut2009-08-073-8/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that the lexer could inadvertently skip over the end of a query being parsed if it encountered a malformed multibyte character. A specially crated query string could cause the lexer to jump up to six bytes past the end of the query buffer. Another problem was that the laxer could use unfiltered user input as a signed array index for the parser maps (having upper and lower bounds 0 and 256 respectively). The solution is to ensure that the lexer only skips over well-formed multibyte characters and that the index value of the parser maps is always a unsigned value. mysql-test/r/ctype_recoding.result: Update test case result: ending backtick is not skipped over anymore. sql/sql_lex.cc: Characters being analyzed must be unsigned as they can be used as indexes for the parser maps. Only skip over if the string is a valid multi-byte sequence. tests/mysql_client_test.c: Add test case for Bug#45010
| | * | | MergeMartin Hansson2009-08-104-13/+118
| | |\ \ \
| | | * | | Bug#46454: MySQL wrong index optimisation leads to incorrect result & crashesMartin Hansson2009-08-074-13/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem 1: When the 'Using index' optimization is used, the optimizer may still - after cost-based optimization - decide to use another index in order to avoid using a temporary table. But when this happens, the flag to the storage engine to read index only (not table) was still set. Fixed by resetting the flag in the storage engine and TABLE structure in the above scenario, unless the new index allows for the same optimization. Problem 2: When a 'ref' access method was employed by cost-based optimizer, (when the column is non-NULLable), it was assumed that it needed no initialization if 'quick' access methods (since they are based on range scan). When ORDER BY optimization overrides the decision, however, it expects to have this initialized and hence crashes. Fixed in 5.1 (was fixed in 6.0 already) by initializing 'quick' even when there's 'ref' access. mysql-test/r/order_by.result: Bug#46454: Test result. mysql-test/t/order_by.test: Bug#46454: Test case. sql/sql_select.cc: Bug#46454: Problem 1 fixed in make_join_select() Problem 2 fixed in test_if_skip_sort_order() sql/table.h: Bug#46454: Added comment to field.
| | * | | | Auto-mergeIgnacio Galarza2009-08-061-2/+15
| | |\ \ \ \ | | | | |/ / | | | |/| |
| | | * | | Bug #27535 Installing Windows service with --defaults-file option - ↵Ignacio Galarza2009-08-061-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | quotation marks issues - Remove offensive quotes.
| | | * | | Merge from mysql-5.0.Davi Arnaut2009-08-044-5/+49
| | | |\ \ \
| | * | | | | Fix for BUG#45816 - assertion failure with index containing double Satya B2009-08-064-2/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | column on partitioned table An assertion 'ASSERT_COULUMN_MARKED_FOR_READ' is failed if the query is executed with index containing double column on partitioned table. The problem is that assertion expects all the fields which are read, to be in the read_set. In this query only the field 'a' is in the readset as the tables in the query are joined by the field 'a' and so the assertion fails expecting other field 'b'. Since the function cmp() is just comparison of two parameters passed, the assertion is not required. Fixed by removing the assertion in the double fields comparision function and also fixed the index initialization to do ordered index scan with RW LOCK which ensures all the fields from a key are in the read_set. Note: this bug is not reproducible with other datatypes because the assertion doesn't exist in comparision function for other datatypes. mysql-test/r/partition.result: Testcase for BUG#45816 mysql-test/t/partition.test: Testcase for BUG#45816 sql/field.cc: Removed the assertion ASSERT_COLUMN_MARED_FOR_READ in Field_double::cmp() function sql/ha_partition.cc: Fixed index_int() method to make it initialize the read_set properly if ordered index scan with RW lock is requested.
| | * | | | | Bug #45630 rpl_trigger.test causes valgrind failures within ↵unknown2009-08-061-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nptl_pthread_exit_hack_handler The server shutdown and start code triggered the valgrind failures within nptl_pthread_exit_hack_handler on Ubuntu 9.04, x86 (but not amd64) in rpl_trigger.test file. For fixing the bug, suppress valgrind failures within nptl_pthread_exit_hack_handler on Ubuntu 9.04, x86 (but not amd64). Because the server shutdown and start code has been heavily used in mysql test set. mysql-test/valgrind.supp: Add code for suppressing valgrind failures within nptl_pthread_exit_hack_handler on Ubuntu 9.04, x86 (but not amd64).
| | * | | | | Merge approved bug fixJim Winstead2009-08-051-6/+49
| | |\ \ \ \ \
| | | * | | | | Not all of the necessary tests for multi-byte support in readlineJim Winstead2009-07-311-6/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | were included in the configure tests. (Bug #46310)
| * | | | | | | Merge mysql-5.1-innodb_plugin to mysql-5.1.Sergey Vojtovich2009-08-11452-334/+221187
| |\ \ \ \ \ \ \ | | | |_|_|_|_|/ | | |/| | | | |
| * | | | | | | Merge from mysql-5.1-bugteam.Davi Arnaut2009-08-04135-675/+27539
| |\ \ \ \ \ \ \ | | | |/ / / / / | | |/| | | | |
| | * | | | | | Merge from mysql-5.1.Davi Arnaut2009-08-045-10/+70
| | |\ \ \ \ \ \ | | |/ / / / / / | |/| | | | | |
| * | | | | | | Merge the fix for bug#42213 up into 5.1-build:Joerg Bruehe2009-07-301-0/+4
| |\ \ \ \ \ \ \ | | | |_|_|_|/ / | | |/| | | | | | | | | | | | | | | | | | | | | Check for "stack overrun" doesn't work, server crashes
| | * | | | | | Merge the fix for bug#42213 into 5.0-build.Joerg Bruehe2009-07-301-0/+4
| | |\ \ \ \ \ \
| | | * | | | | | Our autoconf function "MYSQL_STACK_DIRECTION" will not workJoerg Bruehe2009-07-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | correctly if the compiler optimizes too clever. This has happaned on HP-UX 11.23 (IA64) at optimization level "+O2", causing bug#42213: Check for "stack overrun" doesn't work, server crashes Fix it by adding a pragma that prevents this optimization. As a result, it should be safe to use "+O2" on this platform (unless there is some other, optimizer-related, bug which is just currently masked because we use resudec optimization). config/ac-macros/misc.m4: Our autoconf function "MYSQL_STACK_DIRECTION" is meant to determine whether the stack grows towards higher or towards lower addresses. It does this by comparing the addresses of a variable (which is local to a recursive function) on different nesting levels. This approach requires that the function is really implemented as a recursive function, with each nested call allocating a new stack frame containing the local variable. If, however, the compiler is optimizing so clever that the recursive function is implemented by a loop, then this test will not produce correct results. This has happened on HP-UX 11.23 (IA64) when HP's compiler was called with optimization "+O2" (not with "+O1"), reported as bug#42213. Rather than starting a race with the compiler and making the function so complicated that this optimization does not happen, the idea is to prevent the optimization by adding a pragma. For HP, this is "#pragma noinline". If we encounter other compilers which also optimize too clever, we may add their pragmas here. It is a debatable issue whether such pragmas should be guarded by conditional compiling or not, the reviewers voted to do it. It seems HP has different compilers, "ANSI C" and "aCC", on the affected platform "__HP_cc" ("ANSI C") is predefined. To be on the safe side, the pragma will also take effect if HP's "aCC" compiler is used, or any other compiler on HP-UX.
| * | | | | | | | Upmerge of a merge changeset from 5.0-build to 5.1-build,Joerg Bruehe2009-07-280-0/+0
| |\ \ \ \ \ \ \ \ | | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | no code change.
| | * | | | | | | Merge the bug fix for 37808 ("make_binary_distribution.sh")Joerg Bruehe2009-07-211-5/+45
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into 5.0-build.
| * | \ \ \ \ \ \ \ Merge the fix for bug#37808 into 5.1-build.Joerg Bruehe2009-07-211-5/+54
| |\ \ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ Upmerge a bug fix from 5.0 to 5.1:Joerg Bruehe2009-07-211-5/+54
| | |\ \ \ \ \ \ \ \ \ | | | | |/ / / / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug#37808 "make_binary_distribution" does not always generate correct names Successfully tested on 5.1 sources.
| | | * | | | | | | | This is a fix for bug#37808Joerg Bruehe2009-06-261-5/+45
| | | | |/ / / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "make_binary_distribution" does not always generate correct names Originally, we solved deficiencies of the predefined "autoconf" macros (at least on OS X 10.5, they do not correctly differ between "x86" and "x86_64") by providing explicit "--platform" arguments. With this patch, "make_binary_distribution" evaluates CFLAGS, so it "just works" because CFLAGS contains information about the target CPU. This patch is accompanied by a change in our build tools that drops the setting of "--platform" arguments. scripts/make_binary_distribution.sh: This is a fix for bug#37808 "make_binary_distribution" does not always generate correct names Our platform names are the combination of operating system, architecture (CPU), and a possible suffix (typically "64bit", if a CPU is available in 32 bit too). We get these values from some predefined "autoconf" macros. However, these macros are not perfect, especially on OS X 10.5 they do not differ correctly between x86 (32 bit) and x86_64 (64 bit). Originally, we solved that by providing an explicit "--platform" argument, but it is better to get rid of that and ensure the script "just works". The best indication we have about the CPU is the "CFLAGS" value provided with "configure" and used in "make": It describes for which CPU the binaries are generated, not just which one was running the build. This approach should work even if we implement cross-compilation. So this patch evaluates CFLAGS and extracts its "-arch XYZ" part. When touching the file, I also replaced some tab characters by blanks.
| * | | | | | | | | Merge 5.0-build up into 5.1-build.Joerg Bruehe2009-07-210-0/+0
| |\ \ \ \ \ \ \ \ \ | | | |_|/ / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | This is just about a merge changeset, no code changes.
| | * | | | | | | | Merge main 5.0 into 5.0-buildJoerg Bruehe2009-07-165-2/+49
| | |\ \ \ \ \ \ \ \
| * | \ \ \ \ \ \ \ \ Merge main 5.1 into 5.1-build.Joerg Bruehe2009-07-1650-145/+876
| |\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ Merge some merge changesets from main 5.1 into 5.1-build.Joerg Bruehe2009-07-130-0/+0
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The base changes were backports from later 5.1 into 5.1.34sp1, so there are no code changes associated with this merge.
| * \ \ \ \ \ \ \ \ \ \ \ Merge a merge changeset from 5.0-build into 5.1-build,Joerg Bruehe2009-07-130-0/+0
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | |_|/ / / / / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all code changes are already present.
| | * | | | | | | | | | | Merge main 5.0 into 5.0-build.Joerg Bruehe2009-07-09102-1603/+959
| | |\ \ \ \ \ \ \ \ \ \ \
| * | \ \ \ \ \ \ \ \ \ \ \ Merge main 5.1 into 5.1-build.Joerg Bruehe2009-07-13179-2109/+5141
| |\ \ \ \ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ \ \ \ \ merge fixDaniel Fischer2009-07-032-0/+0
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | |/ / / / / / / / / / / / | | |/| | | | | | | | | | | |
| | * | | | | | | | | | | | | Bug#44647 - fix file permissions.Daniel Fischer2009-07-032-0/+0
| | | |_|_|_|_|_|/ / / / / / | | |/| | | | | | | | | | |
| * | | | | | | | | | | | | merge patch for bug#31785Daniel Fischer2009-07-021-5/+12
| | |_|_|_|_|_|/ / / / / / | |/| | | | | | | | | | |
| | | | | | | | * | | | | Bug#45017: Failure to connect if hostname maps to multiple addressesDavi Arnaut2009-07-301-7/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that the C API function mysql_real_connect only attempts to connect to the first IP address returned for a hostname. This can be a problem if a hostname maps to multiple IP address and the server is not bound to the first one that is returned. The solution is to augment mysql_real_connect so that it attempts to connect to all IPv4 addresses that a domain name maps to. The function goes over the list of address until a successful connection is established. No test case is provided as its not possible to test this automatically with the current testing infrastructure. sql-common/client.c: The client will try to connect to each IPv4 address from the list of addresses that hostname maps to until a successful connection is established or there are no more address.
| | | | | | | | * | | | | merge from mysql-5.1-bugteamSatya B2009-08-041-1/+1
| | | | | | | | |\ \ \ \ \
| | | | | | | | | * | | | | Additional post-commit fix (bug #30946): server versionGleb Shchepa2009-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in a conditional commentary at the new SELECT ... INTO OUTFILE ... CHARACTER SET syntax has been updated to 5.1.38.
| | | | | | | | | * | | | | auto-merge mysq-5.1-bugteam (local) --> mysql-5.1-bugteamAlfranio Correia2009-08-030-0/+0
| | | | | | | | | |\ \ \ \ \
| | | | | | | | | | * \ \ \ \ null-merge mysql-5.0-bugteam --> mysql-5.1-bugteamAlfranio Correia2009-08-030-0/+0
| | | | | | | | | | |\ \ \ \ \ | | | | | | | | | | | | |_|/ / | | | | | | | | | | | |/| | |
| | | | | | | | | | | * | | | Post-fix for BUG#43264Alfranio Correia2009-08-033-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Install procedure does not copy *.inc files located under the mysql-test/t directory. Therefore, this patch moves the rpl_trigger.inc to the mysql-test/include directory.
| | | | | | | | * | | | | | | Remove the 'single' space character after include/lock0iter.h in fileSatya B2009-08-031-1/+1
| | | | | | | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | storage/innobase/Makefile.am storage/innobase/Makefile.am: Remove the 'single' space character after include/lock0iter.h
| | | | | | | | * | | | | | Auto-mergeMikael Ronstrom2009-08-0351-158/+1156
| | | | | | | | |\ \ \ \ \ \ | | | | | | | | | |/ / / / /
| | | | | | | | | * | | | | null-merge mysql-5.0-bugteam --> mysql-5.1-bugteamAlfranio Correia2009-08-030-0/+0
| | | | | | | | | |\ \ \ \ \ | | | | | | | | | | |/ / / / | | | | | | | | | | | | | / | | | | | | | | | | |_|_|/ | | | | | | | | | |/| | |
| | | | | | | | | | * | | auto-merge mysql-5.0-bugteam (local) --> mysql-5.0-bugteamAlfranio Correia2009-08-035-43/+997
| | | | | | | | | | |\ \ \
| | | | | | | | | | | * | | BUG#43264 Test rpl_trigger is failing randomly w/ use of copy_file in 5.0Alfranio Correia2009-08-025-43/+997
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test case fails sporadically on Windows while trying to overwrite an unused binary log. The problem stems from the fact that MySQL on Windows does not immediately unlock/release a file while the process that opened and closed it is still running. In BUG 38603, this issue was circumvented by stopping the MySQL process, copying the file and then restarting the MySQL process. Unfortunately, such facilities are not available in the 5.0. Other approaches such as stopping the slave and issuing change master do not work because the relay log file and index are not closed when a slave is stopped. So to fix the problem, we simply don't run on windows the part of the test that was failing.
| | | | | | | | | * | | | | Backport Tomas Ulin fix for a spurious failure on PushBuild:Davi Arnaut2009-08-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://lists.mysql.com/commits/53569 sql/ha_ndbcluster_binlog.cc: Remove extraneous mutex lock which could cause the server to deadlock.
| | | | | | | | | * | | | | Merge fix to test resultsJim Winstead2009-07-311-2/+2
| | | | | | | | | |\ \ \ \ \ | | | | | | | | | | | |_|_|/ | | | | | | | | | | |/| | |