1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-31 22:22:30 +03:00
Commit Graph

68513 Commits

Author SHA1 Message Date
Luis Soares
f6e9720f3c BUG#42879: CHANGE MASTER RELAY_LOG_FILE=path fails on windows
Re-enabling the test case on windows since BUG#12190 has fixed
the issue.
2011-01-17 18:51:01 +00:00
Magnus Blåudd
d30ba619eb mtr.pl fixes for ndb
- Support for graceful shutdown of cluster by using "ndb_mgm -e 'shutdown'"
2011-01-17 15:23:37 +01:00
Magnus Blåudd
abed4d1683 mtr.pl fixes for ndb
- Make it possible to use MTR_MAXNDB to set the upper limit of number of
  parallel ndb test to run.
 - Very useful on machines with many cores and lots of RAM
2011-01-17 15:20:49 +01:00
Magnus Blåudd
93486750a1 mtr.pl fixes for ndb
-  Find ndbmtd and use it round robin
2011-01-17 15:18:44 +01:00
Marko Mäkelä
c344344ab4 Merge from mysql-5.1-innodb to mysql-5.5-innodb. 2011-01-17 14:11:43 +02:00
Bjorn Munch
2d3b1b7fbf null upmerge 2011-01-17 11:01:25 +01:00
Bjorn Munch
15661ae0ad merge from 5.5 main 2011-01-17 10:32:16 +01:00
John H. Embretsen
67bcf3e3be Fix for Bug#45730 - Test case disabled in show_check.test due to WL#1324.
Enabled test snippet for bug 4374, tested on Mac OS X 10.6 as well as Solaris.
Moved test snippet to a different place in the file, in order to avoid having 
to save and restore "SET NAMES" setting. New surroundings expect latin1, as is 
used in the testsnippet.

An extra copy of the commented test snippet is removed, a comment is added,
SQL keywords are converted to uppercase, and engine name "heap" is updated to 
"Memory".

Also added Copyright statement and a notice about the file's encoding(s).
2011-01-17 08:12:38 +01:00
Nirbhay Choubey
974bf57dac Bug#58139 : default-auth option not recognized in MySQL standard
command line clients.

Postfix covering other mysql standard clients like mysql_upgrade,
mysqlbinlog, mysqlcheck, mysqlimport, mysqlshow and mysqlslap.
2011-01-16 09:29:05 +05:30
Nirbhay Choubey
fbc10eeb9d Merge of fix for bug#58221 from mysql-5.1 -> mysql-5.5. 2011-01-16 02:08:24 +05:30
Jimmy Yang
c4c90d912a Merge from mysql-5.1-innodb to mysql-5.5-innodb 2011-01-14 23:24:47 -08:00
3533c1d371 Auto merge 2011-01-15 13:54:51 +08:00
Alexey Botchkov
0e2211e927 Bug#46393 If for slow_query_log a string is entered it does not complain.
For all the boolean system variables we now issue warnings if the
        value wasn't recognized. Before that we just silently set them
        to FALSE in this case.

per-file comments:
  mysys/my_getopt.c
Bug #46393 If for slow_query_log a string is entered it does not complain.
        warning issued if no documented value was specified.
2011-01-15 02:18:22 +04:00
Alexey Botchkov
d027ad5193 merging. 2011-01-15 01:02:02 +04:00
Georgi Kodinov
e07c6cae9b Bug #59275: SHOW PRIVILEGES doesn't have an entry for the PROXY privilege
Added the privilege to the SHOW command.
2011-01-14 16:57:13 +02:00
Georgi Kodinov
d037f626fa Bug #59453: Non-ASCIIZ string kills protocol extensibility in MySQL 5.5
When the server sends the name of the plugin it's using in the handshake 
packet it was null terminating it in it's buffer, but was sending a length of 
the packet 1 byte short.
Fixed to send the terminating 0 as well by increasing the length of the 
packet to include it. 
In this way the handshake packet becomes similar to the change user packet
where the plugin name is null terminated.
No test suite added as the fix can only be observed by analyzing the bytes
sent over the wire.
2011-01-14 17:48:11 +02:00
Tor Didriksen
02d7b27641 Bug #59498 div function broken in mysql-trunk 2011-01-14 15:03:37 +01:00
Nirbhay Choubey
43a2f80e16 Merging fix of Bug#13618 from mysql-5.1. 2011-01-14 20:11:00 +05:30
Guilhem Bichot
b2c4b4636a Fix for BUG#59432 "--autocommit=on does not work (@@global.autocommit is 0)" 2011-01-14 14:21:46 +01:00
Georgi Kodinov
b23c9fd203 Bug #55509 : main.lowercase_table2 fails on Mac OSX (again)
The test passes on MacOSX. removing it from the experimental list.
2011-01-14 14:59:23 +02:00
Luis Soares
2edc2f96c5 Automerge from bug branch into latest mysql-5.5. 2011-01-14 11:14:01 +00:00
Sven Sandberg
cf946cd001 merged BUG#59063 (backport from trunk) from 5.1 to 5.5 2011-01-14 11:36:53 +01:00
Georgi Kodinov
3bb2abbc6e bumped up the version 2011-01-14 11:52:55 +02:00
Tor Didriksen
8dfab82ee0 Bug #59241 invalid memory read in do_div_mod with doubly assigned variables
Fix: copy my_decimal by value, to avoid dangling pointers.
2011-01-14 10:05:14 +01:00
Serge Kozlov
cfa9a4bde6 Bug#54820: master_connect_retry increased for Valgrind environment support
Bug#58525: separate string and numbers for comparing
2011-01-14 00:18:17 +03:00
Luis Soares
69465fcf9d BUG#59444
Added comments to rpl_show_relaylog_events as requested by 
reviewer.
2011-01-13 14:31:37 +00:00
Luis Soares
8734d5db1e BUG#59444
Refactoring effort on test case rpl_show_relaylog_events
requested by reviewers.
2011-01-13 12:21:57 +00:00
Luis Soares
df7ab312af Automerge from mysql-5.1 into latest mysql-5.5. 2011-01-13 11:42:34 +00:00
Davi Arnaut
7bee52da46 Bug#42054: SELECT CURDATE() is returning bad value
The problem from a user point of view was that on Solaris the
time related functions (e.g. NOW(), SYSDATE(), etc) would always
return a fixed time.

This bug was happening due to a logic in the time retrieving
wrapper function which would only call the time() function every
half second. This interval between calls would be calculated
using the gethrtime() and the logic relied on the fact that time
returned by it is monotonic.

Unfortunately, due to bugs in the gethrtime() implementation,
there are some cases where the time returned by it can drift
(See Solaris bug id 6600939), potentially causing the interval
calculation logic to fail.

Since newer versions of Solaris (10+) have alleviated the
performance degradation associated with time(2), the solution is
to simply directly rely on time() at each invocation.

This simplification has an upside that it allows us to eliminate
a lock which was used to control access to the variables used
to track the half second interval, thus improving the overall
scalability of timekeeping related functions (e.g. NOW()).

Benchmarks runs have shown no significant degradation associated
with this change. With this, there are actually improvements in
performance for cases involving many connections.

In summary, the changes introduced by this patch are:

a) my_time() and my_micro_time_and_time() no longer use gethrtime().
   Instead, time() and gettimeofdate() are used correspondingly.

b) my_micro_time() is changed to not use gethrtime() so as to
   have the same time source as my_micro_time_and_time().
   There shouldn't be any performance impact from this change
   since this function is used only a few times during statement
   execution and, on Solaris, gettimeofday() shows acceptable
   performance.
2011-01-12 18:36:39 -02:00
Ole John Aske
970c3fb244 Fix for #58422: Incorrect result when OUTER JOIN'ing with an empty table.
Fixed incorrect checks in join_read_const_table() for when to 
accept a non-existing, or empty const-row as a part of the const'ified 
set of tables.
      
Intention of this test is to only accept NULL-rows if this table is outer joined
into the resultset. (In case of an inner-join we can conclude at this point that 
resultset will be empty, end we want to return 'error' to signal this.)
      
Initially 'maybe_null' is set to the same value as 'outer_join' in 
setup_table_map(), mysql_priv.h ~line 2424. Later simplify_joins() will
attemp to replace outer joins by inner join whenever possible. This
will cause 'outer_join' to be updated. However, 'maybe_null' is *not* updated
to reflect this rewrite as this field is used to currectly set the 'nullability'
property for the columns in the resultset.
      
We should therefore change join_read_const_table() to check the 'outer_join'
property instead of 'maybe_null', as this correctly reflect the nullability of
the *execution plan* (not *resultset*).
2011-01-13 11:42:48 +01:00
Nirbhay Choubey
e17c9279ee Merging from mysql-5.1. 2011-01-13 15:59:13 +05:30
Ole John Aske
ba38eef6dc Fix for bug#58134: 'Incorrectly condition pushdown inside subquery to NDB engine'
An incorrect 'table_map' containing both the table itself, 
and possible any outer-refs if this was the last table in 
the subquery, was presented to make_cond_for_table().
      
As a pushed condition is only able to refer column from the table
the condition is pushed to, nothing else than columns from the
table itself (tab->table->map) may be refered in the pushed condition
constructed by 'push_cond= make_cond_for_table()'. 
      
Also fix a minor 'copy and paste' bug in a comment 
inside make_cond_for_table().

No testcase is possible on mainbranch as the NDB engine is not available (yet)
on mysql >= 5.5
2011-01-13 10:20:45 +01:00
Georgi Kodinov
ef331b0c42 null merge of the version bumps. 2011-01-13 11:05:42 +02:00
Ole John Aske
3e1ce666c4 Fix for Bug#57034 incorrect OUTER JOIN result when joined on unique key
Item_equal::val_int() checked for NULL-values by checking Item::null_value
*before* the respective ::store_value() and ::cmp(Item*) metods where called.

As Item::null_value is set by these metods, the value of 'null_value' 
is not valid until *after* ::store_value() or ::cmp() has
been called for the Item object.
      
Fix is to swap order of ::store_value()/::cmp() and checking of Item::null_value.
This pattern is widely used other places inside item_cmpfunc.cc .
2011-01-13 09:33:30 +01:00
Martin Hansson
cecc99db20 Merge of fix for Bug#58165. 2011-01-13 09:07:21 +01:00
Bjorn Munch
8c91dc626c null upmerge 2011-01-12 23:54:18 +01:00
Bjorn Munch
1dc4837a15 merge from 5.5-mtr 2011-01-12 23:32:39 +01:00
Luis Soares
ac8e0ec1b1 BUG#59444: rpl_row_show_relaylog_events fails on daily-5.5 test runs
The test started failing on the same day patch for BUG 49978 was
pushed. BUG 49978 changed part of the replication testing
infrastructure in mysql-test-run. This caused the test to fail
sporadically with result differences on relay log file
names. When the test fails the relay-log filenames are shifted by
one, eg:

-show relaylog events in 'slave-relay-bin.000002' from <binlog_start>;
+show relaylog events in 'slave-relay-bin.000003' from <binlog_start>;

The problem was caused by a bad cleanup when using the include
files:

  - include/setup_fake_relay_log.inc
  - include/cleanup_fake_relay_log.inc

Which would leave a spurious relay-log file around (not listed in
slave-relay-bin.index), causing the server to shift the name of
the relay logs by one, even if cleaning up with RESET SLAVE.

We fix this by removing the relay-log file when it is not needed
anymore, ie at setup time and after recreating the fake relay-log
index.

Additionally, to make the affected test more resilient, we
deployed a call to rpl_reset.inc (which resets both master and
slave, including log files) before actually running the test
case.

Finally, appart from the reported bug, we also fix: (a) an
unrelated issue with the failing test itself - in some cases, the
test was not setting the log file name to use when it should; 
(b) one typo.
2011-01-12 18:35:06 +00:00
Evgeny Potemkin
8d93a0f79e Auto-merged. 2011-01-12 20:32:38 +03:00
Evgeny Potemkin
ce692c661a Auto-merge. 2011-01-12 19:47:00 +03:00
Vasil Dimov
8c95b3c3d4 Merge mysql-5.1-innodb -> mysql-5.5-innodb 2011-01-12 17:59:45 +02:00
Georgi Kodinov
042573871a merge 2011-01-12 17:16:44 +02:00
Georgi Kodinov
1680a56657 merge 2011-01-12 17:10:12 +02:00
Bjorn Munch
67224211a8 null upmerge 2011-01-12 15:45:47 +01:00
Bjorn Munch
d3c60fa6b4 merge from 5.5 main 2011-01-12 15:25:59 +01:00
Dmitry Lenev
bc8e89c926 Merged fix for bug #58499 "DEFINER-security view selecting from
INVOKER-security view access check wrong" into mysql-5.5 tree.
2011-01-12 16:28:33 +03:00
Bjorn Munch
add4385d8d Bug #58841 Generalise handling of plugins in MTR mysql-test-run.pl script
Follow-up fix: mtr died if trying to run semisync test w/o the plugin
2011-01-12 14:17:54 +01:00
Alexey Botchkov
405fb864c5 merging. 2011-01-12 17:11:31 +04:00
Evgeny Potemkin
d6922c7e83 Bug#59330: Incorrect result when comparing an aggregate function with
TIMESTAMP.

Item_cache::get_cache wasn't treating TIMESTAMP as a DATETIME value thus
returning string cache for items with TIMESTAMP type. This led to incorrect
TIMESTAMP -> INT conversion and to a wrong query result.

Fixed by using Item::is_datetime function to check for DATETIME type group.
2011-01-12 15:58:47 +03:00
Ole John Aske
003e87fef0 Fix for bug#58818: Incorrect result for IN/ANY subquery
If the ::single_value_transformer() find an existing HAVING condition it used
to do the transformation:
            
  1) HAVING cond -> (HAVING Cond) AND (cond_guard (Item_ref_null_helper(...))
      
As the AND condition in 1) is Mc'Carty evaluated, the
right side of the AND cond should be executed only if the 
original 'HAVING evaluated' to true.
      
However, as we failed to set 'top_level' for the tranformed HAVING condition,
'abort_on_null' was FALSE after transformation. An
UNKNOWN having condition will then not terminate evaluation of the
transformed having condition, and we incorrectly continued
into the Item_ref_null_helper() part.
2011-01-12 13:15:22 +01:00