1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-18 23:03:28 +03:00
Commit Graph

26109 Commits

Author SHA1 Message Date
3355ebff22 automerge 2009-02-14 17:52:45 -05:00
1cc7fbcd4e Automerge. 2009-02-14 20:14:10 +03:00
4e356b1fe3 Added missing DROP TABLE to type_float.result.
mysql-test/r/type_float.result:
  Added missing DROP TABLE.
2009-02-14 20:12:14 +03:00
6d1dc3270b Fixed parser test failure introduced by the patch for bug #21205.
mysql-test/r/parser.result:
  Take additional precision into account.
2009-02-14 19:04:16 +03:00
8efeeb8bd2 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam 2009-02-14 19:00:11 +03:00
9665fcfff3 Fixed several test failures in the funcs_1 suite introduced by the patch for bug #21205.
mysql-test/suite/funcs_1/r/memory_func_view.result:
  Take additional precision into account.
mysql-test/suite/funcs_1/r/memory_views.result:
  Take additional precision into account.
mysql-test/suite/funcs_1/r/myisam_func_view.result:
  Take additional precision into account.
mysql-test/suite/funcs_1/r/myisam_views.result:
  Take additional precision into account.
2009-02-14 18:58:07 +03:00
b41215add2 Fixed bdb_gis and ndb_gis test failures in PB introduced by the patch for bug #21205.
mysql-test/r/bdb_gis.result:
  Take additional precision into account.
mysql-test/r/ndb_gis.result:
  Take additional precision into account.
mysql-test/t/type_float.test:
  Added missing DROP TABLE.
2009-02-14 18:36:57 +03:00
d8ac91387b Merge from dev tree. 2009-02-14 12:11:32 +03:00
fb3e5910ec Merge from dev tree. 2009-02-14 12:09:35 +03:00
aedef27a85 BUG#32667: lowercase_table3.test reports to error log
Cleaned up SQL code in the test.
Needed to move the FLUSH TABLES statement prior to the DROP TABLE t1 to prevent a warning of
Table open on delete and a test fail.
2009-02-13 16:12:59 -05:00
f29aa74aa1 Remove test case for bug 40264.
Dirty close tricky does not work on Windows.

mysql-test/r/query_cache_notembedded.result:
  Remove test case result.
mysql-test/t/query_cache_notembedded.test:
  Remove test case.
2009-02-13 17:26:20 -02:00
ce6e5950bd auto-merge 2009-02-13 19:18:01 +01:00
59c8a307fe Fix for Bug#42836 Funcs_1 storedproc and storedproc_08 tests failing 2009-02-13 19:07:56 +01:00
694323952a Bug#42146 - DATETIME fractional seconds parse error
Bug#38435 - LONG Microseconds cause MySQL to fail a CAST to DATETIME or DATE

Parsing of optional microsecond part in datetime did not
fail gracefully when field width was larger than the allowed
six places.

Now handles up to the correct six places, and disregards
any extra digits without messing up what we've already got.

mysql-test/r/type_datetime.result:
  show graceful handling of overly long microsecond parts
  (correct truncation).
mysql-test/t/type_datetime.test:
  show graceful handling of overly long microsecond parts
  (correct truncation).
sql-common/my_time.c:
  Special case for time-parsing: for microsecond part,
  leading zeroes are actually meaningful! Also, don't
  break the entire date on more than the allowed six
  digits in microsecond part, just truncate the extra
  digits.
2009-02-13 19:07:03 +01:00
a41bdfa52a Merge from team tree 2009-02-13 19:32:23 +03:00
dd35a152f9 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam. 2009-02-13 19:20:56 +03:00
de9da6dd32 merging from the main to a local branch 2009-02-13 18:20:36 +02:00
9373b1b880 Merge from dev tree. 2009-02-13 19:17:07 +03:00
bdbe393db1 Modifications to MTR and mysqltest to improve feedback from the latter when
testcase checks are made.
      
MTR spawns mysqltest to run check-testcase test before and after each testcase 
it runs. It can also run check-warnings using mysqltest. Since it happened on PB 
that these checks hanged, this patch provides additional feedback to help 
investigating such failures:
      
- mysqltest is modified to give feedback about main steps in execution of a 
testcase if run in verbose mode (including connection to the server),
     
- MTR is modified to run mysqltest in verbose mode when doing check-testcase or 
check-warnings. The diagnostic output from mysqltest is preserved so that it is 
saved upon test failure.

client/mysqltest.cc:
  Add verbose messages informing about main steps in execution of a testcase.
mysql-test/mysql-test-run.pl:
  - When doing check-testcase or check-warnings run mysqltest in verbose mode.
  - Do not delete the mysqltest's error log if errors are detected during these
2009-02-13 16:27:33 +01:00
841145eed2 Merge 2009-02-13 14:47:01 +01:00
5d0054012d Merge actual tree -> local GCA tree, no conflicts 2009-02-13 13:55:29 +01:00
9fc536e1d3 Merge actual tree -> local GCA tree, no conflicts 2009-02-13 13:06:50 +01:00
018624301c Added to source package the file "mysql-test/suite/bugs/combinations"
and the directory "mysql-test/suite/jp/include"
2009-02-13 10:42:27 +01:00
12f09e5ac0 Work around for bug in some versions of the File::Temp Perl module 2009-02-13 10:38:53 +01:00
23d49d7752 branches/zip:
Fix the failing mysql-test partition_innodb, which failed only if run after
innodb_trx_weight (or other test that would leave LATEST DEADLOCK ERROR into
the output of SHOW ENGINE INNODB STATUS). Find further explanation for the
failure at the top of the added patch partition_innodb.diff.
2009-02-13 08:06:31 +00:00
be5cc29e48 Bug#42797 mtr.pl - temporary directory are deleted when child exit's
- Since we are only using the auto cleanup in one place of mtr.pl today, disable the
autocleanup and write our own END handler that clean up the tmpdir only when the process
that created it exits.
2009-02-12 17:36:58 +01:00
34d066a21c Bug#42788 lib\My\CoreDump.pm needs to be ported for Windows.
- output callstacks from crash using cdb debugger which is part 
of "Debugging Tools for Windows". Output  other interesting 
information - function parameters, possibly source code fragment
and other goodies of  "!analyze" cdb extension.
2009-02-12 17:13:56 +01:00
a4ff9f22ad branches/zip:
Fix pathname of the file to patch.
2009-02-12 15:38:27 +00:00
984c2489d1 Merge 5.1-bugteam -> 5.1-bugteam (local). 2009-02-12 14:25:12 +04:00
e80537b791 Bug#40675 MySQL 5.1 crash with index merge algorithm and Merge tables
A Query in the MyISAM merge table was crashing 
if the index merge algorithm was being used

Index Merge optimization requires the reading of 
multiple indexes at the same time. Reading multiple 
indexes at once with current SE API means that we 
need to have handler instance for each to-be-read 
index. This is done by creating clones of the handlers 
instances. The clone internally does a open of the handler.

The open for a MERGE engine is handled in the following 
phases

1) open parent table
2) generate list of underlying
   table
3) attach underlying tables

But the current implementation does only the first 
phase (i.e.) open parent table.

The current patch fixes this at the MERGE engine level, 
by handling the clone operation within the MERGE engine 
rather than in the storage engine API. It opens and 
attaches the MyISAM tables on the MyISAM storage engine 
interface directly within the MERGE engine. The new MyISAM 
table instances, as well as the MERGE clone itself, are not 
visible in the table cache. This is not a problem because
all locking is handled by the original MERGE table from which
this is cloned of.

mysql-test/r/merge.result:
  updated the result file to reflect the new tests
  added to test the fix
mysql-test/t/merge.test:
  Added new tests to verify that the index merge
  algorithm does not crash in the merge engine.
storage/myisammrg/ha_myisammrg.cc:
  Implement the clone method, that handles
  
  1) Cloning the handler
  2) Opening underlying MYISAM child tables
  3) Copies the state of the original handler and the children
     into the cloned instances
  4) Sets the appropriate flags
storage/myisammrg/ha_myisammrg.h:
  Added a flag that is set to indicate that the current 
  instance is cloned. Also added the prototype or the clone 
  method.
storage/myisammrg/myrg_open.c:
  Since we do now again use myrg_open() in the server
  removed the comments marking this as deadcode.
2009-02-12 16:42:07 +05:30
5103b05dd5 Merge 5.1-bugteam (local) -> 5.1-bugteam. 2009-02-12 14:12:40 +04:00
e994c4f97b Merge 5.0-bugteam -> 5.1-bugteam. 2009-02-12 14:10:07 +04:00
ccca4feca8 merged bug 33813 to 5.1-bugteam 2009-02-12 11:52:01 +02:00
5803e10628 BUG#36737 - having + full text operator crashes mysql
MATCH() function accepts column list as an argument. It was possible to override
this requirement with aliased non-column select expression. Which results in
server crash.

With this fix aliased non-column select expressions are not accepted by MATCH()
function, returning an error.

mysql-test/r/fulltext.result:
  A test case for BUG#36737.
mysql-test/t/fulltext.test:
  A test case for BUG#36737.
sql/item_func.cc:
  Only accept fields as arguments to MATCH().
2009-02-12 13:49:44 +04:00
7df0e72c7f merged bug 33813 to 5.0-bugteam 2009-02-12 11:27:06 +02:00
171e8bd486 branches/zip: Adjust the result file of innodb_thread_concurrency_basic
test. The default value of innodb_thread_concurrency is changed to 0
(from 8) via r4163.
2009-02-12 08:37:10 +00:00
b6beea92c4 branches/zip: Make innodb_thread_concurrency=0 the default.
The old default was 8.
2009-02-11 22:14:19 +00:00
8db289c4d5 BUG#13684: post push fix for test case.
The test case relies on binlog entries for assertion. The problem is that the
binlog does not get cleaned in pushbuild between tests, resulting in extra
entries in the result file, causing the test to fail.
      
This fix adds a reset master at the beginning of the test, so that we get a
clean binlog file.
2009-02-11 18:46:43 +01:00
2238eaaffb due to merge. 2009-02-11 16:35:50 +01:00
a567ee9b7a merge: 5.1-bt --> 5.1-bt local 2009-02-11 14:52:19 +01:00
f3314e90e3 BUG#38197 Errors in @@init_slave not visible in 'show slave status'
Some errors that cause the slave SQL thread to stop are not shown in the
Slave_SQL_Error column of "SHOW SLAVE STATUS". Instead, the error is only 
in the server's error log.
      
That makes it difficult to analyze the error for the user. One example of an error
that stops the slave but is not shown by "SHOW SLAVE STATUS" is when @@global.init_slave
is set incorrectly (e.g., it contains something that is not valid SQL).
      
Three failures were not correctly reported:
      
1 - Failures during slave thread initialization
2 - Failures while initializing the relay log position right after
starting the slave thread.
3 - Failures while processing queries passed through the init_slave
option.
      
This patch fixes the issues by reporting the errors through relay-info->report.
2009-02-11 11:56:25 +00:00
3041bd7c8c merge 2009-02-11 12:19:33 +01:00
48d4d34689 Reviewed fix for bug#40882: Replaced "sleep 1" by wait_condition, added save/restore start values and closed open sessions. When trying to use "wait_for_query_to_succeed" a type has been fixed, also in "rename.test": Added session count and check and replaced error numbers. 2009-02-11 10:27:52 +01:00
93ef74bfd1 Bug #36763
TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported.

Correcting some tests that was failing in pushbuild as well as fixing result
file for some tests that are not executed in the default MTR run.

mysql-test/suite/binlog/t/binlog_truncate_innodb.test:
  Need to reset master to avoid the check to be for the wrong binlog file.
mysql-test/suite/binlog/t/binlog_truncate_myisam.test:
  Need to reset master to avoid the check to be for the wrong binlog file.
2009-02-10 22:26:37 +01:00
9fd1d14636 Merging with 5.1-bugteam 2009-02-10 16:13:44 +01:00
9b612d2c90 BUG#36763: TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported.
Post-merge fixes. Changes to some result sets.

mysql-test/r/commit_1innodb.result:
  TRUNCATE TABLE does not cause the binary log to do commits any more.
mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result:
  TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
  TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result:
  TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
mysql-test/suite/rpl/r/rpl_truncate_2myisam.result:
  STOP SLAVE was replaced with include file.
mysql-test/suite/rpl/r/rpl_truncate_3innodb.result:
  STOP SLAVE was replaced with include file.
2009-02-10 15:44:58 +01:00
1571f06196 Merge into dev tree. 2009-02-10 16:27:35 +03:00
fd8bf58ca9 Fix for bug #41868: crash or memory overrun with concat + upper,
date_format functions

String::realloc() did not check whether the existing string data fits in
the newly allocated buffer for cases when reallocating a String object
with external buffer (i.e.alloced == FALSE).  This could lead to memory
overruns in some cases.

client/sql_string.cc:
  Fixed String::realloc() to check whether the existing string data fits
  in the newly allocated buffer for cases when reallocating a String
  object with external buffer.
mysql-test/r/func_str.result:
  Added a test case for bug #41868.
mysql-test/t/func_str.test:
  Added a test case for bug #41868.
sql/sql_class.cc:
  After each call to Item::send() in select_send::send_data() reset
  buffer to its original state to reduce unnecessary malloc() calls. See
  comments for bug #41868 for detailed analysis.
sql/sql_string.cc:
  Fixed String::realloc() to check whether the existing string data fits
  in the newly allocated buffer for cases when reallocating a String
  object with external buffer.
2009-02-10 15:38:56 +03:00
b17a310aaf merge 2009-02-10 12:05:53 +01:00
b7b6773f69 BUG#13684: SP: DROP PROCEDURE|FUNCTION IF EXISTS not binlogged if routine does not exist
There is an inconsistency with DROP DATABASE IF EXISTS, DROP
TABLE IF EXISTS and DROP VIEW IF EXISTS: those are binlogged even
if the DB or TABLE does not exist, whereas DROP PROCEDURE IF
EXISTS does not. It would be nice or at least consistent if DROP
PROCEDURE/STATEMENT worked the same too.
      
Fixed DROP PROCEDURE|FUNCTION IF EXISTS by adding a call to
write_bin_log in mysql_execute_command. Checked also if all
documented "DROP (...) IF EXISTS" get binlogged. Left out DROP
SERVER IF EXISTS because it seems that it only gets binlogged when
using row event (see BUG#25705).
2009-02-10 11:52:19 +01:00