Commit graph

1373 commits

Author SHA1 Message Date
Andrei Elkin
e2177e81dc merge from 5.1-bt to a local branch 2009-03-13 21:49:37 +02:00
Georgi Kodinov
7ac3f3f1be addendum to bug #36540 : fix the funcs_1 test suite. 2009-03-13 11:16:32 +02:00
Tatiana A. Nurnberg
8370242323 manual merge for 40657 beautification 2009-03-12 17:55:10 +01:00
Leonard Zhou
9952412798 BUG#39858 rpl.rpl_rotate (rpl.rpl_rotate_logs) failed on pushbuild: result mismatch
The method to purge binary log files produces different results in some platforms.
The reason is that the purge time is calculated based on table modified time and
that can't guarantee to purge master-bin.000002 in all platforms.(eg. windows)

Use a new way that sets the time to purge binlog file 1 second after the last
modified time of master-bin.000002.
That can be sure that the file is always deleted in any platform.

mysql-test/suite/rpl/r/rpl_rotate_logs.result:
  Test result
mysql-test/suite/rpl/t/rpl_rotate_logs.test:
  Test file
2009-03-12 17:48:41 +08:00
Davi Arnaut
402bc523b2 Bug#36540: CREATE EVENT and ALTER EVENT statements fail with large server_id
The problem is that creating a event could fail if the value of
the variable server_id didn't fit in the originator column of
the event system table. The cause is two-fold: it was possible
to set server_id to a value outside the documented range (from
0 to 2^32-1) and the originator column of the event table didn't
have enough room for values in this range.

The log tables (general_log and slow_log) also don't have a proper
column type to store the server_id and having a large server_id
value could prevent queries from being logged.

The solution is to ensure that all system tables that store the
server_id value have a proper column type (int unsigned) and that
the variable can't be set to a value that is not within the range.

mysql-test/r/events_bugs.result:
  Add test case result for Bug#36540
mysql-test/r/log_tables.result:
  Update column type.
mysql-test/r/system_mysql_db.result:
  Update column type.
mysql-test/r/variables.result:
  Add test case result for server_id value range.
mysql-test/suite/sys_vars/r/server_id_basic_64.result:
  Update test case results.
mysql-test/t/events_bugs.test:
  Add test case for Bug#36540
mysql-test/t/log_tables.test:
  Fix column type.
mysql-test/t/variables.test:
  Add test case for server_id value range.
scripts/mysql_system_tables.sql:
  Columns that store the server_id value must be of type INT UNSIGNED,
  fix event (originator), general_log and slow_log (server_id) tables
  in accordance.
scripts/mysql_system_tables_fix.sql:
  Columns that store the server_id value must be of type INT UNSIGNED,
  fix event (originator), general_log and slow_log (server_id) tables
  in accordance.
sql/mysqld.cc:
  Set min and max values for the server_id variable.
  Unfortunately we can't easily change server_id variable type
  from ulong to uint32 because of the sys_var classes.
2009-03-11 17:30:56 -03:00
Guilhem Bichot
b0fcbc84ef merge of 5.1-main into 5.1-maria; MyISAM changes are also ported to Maria. 2009-03-11 16:32:42 +01:00
Georgi Kodinov
a43992d78c Revert the push for bug #39858 2009-03-11 17:19:18 +02:00
Leonard Zhou
16d7c26b71 Merge 2009-03-11 14:10:50 +08:00
Leonard Zhou
3c5c878715 BUG#39858 rpl.rpl_rotate (rpl.rpl_rotate_logs) failed on pushbuild: result mismatch
The method to purge binary log files produces different results in some platforms.
The reason is that the purge time is calculated based on table modified time and
that can't guarantee to purge master-bin.000002 in all platforms.(eg. windows)

Use a new way that sets the time to purge binlog file 1 second after the last modified time of master-bin.000002.
That can be sure that the file is always deleted in any platform.

mysql-test/suite/rpl/r/rpl_rotate_logs.result:
  Test result
mysql-test/suite/rpl/t/rpl_rotate_logs.test:
  Change 'purge time' 1 sencond after the last modified time of master-bin.000002.
2009-03-11 13:35:58 +08:00
Patrick Crews
4d99f10126 merge 5.0 -> 5.1 2009-03-09 13:45:40 -04:00
Patrick Crews
636d8c5062 Fix of failing funcs_1 tests.
Changes are due to changes in precision.
Re-record of .result files to account for new server precision.
2009-03-09 11:32:07 -04:00
Andrei Elkin
67ed422313 Bug #40559 assertion failed in check_binlog_magic
The reason of the bug is in that the test makes a trick with relay log files and
did not reset fully at the end.
If mtr does not restart the test the new SQL thread tried to work with the old time
session data.

Fixed with deploying RESET slave at the clean-up.

mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test:
  adding RESET slave to force active mi and rli data struct to be reset.
  The slave SQL thread will deal with a fresh structures each time it restarts.
2009-03-06 20:19:29 +02:00
Tatiana A. Nurnberg
cee070e1bb manual merge 2009-03-06 16:11:34 +01:00
Luis Soares
5833903889 BUG#39753: Replication failure on MIXED + bit + myisam + no PK
When using mixed mode the record values stored inside the storage
engine differed from the ones computed from the row event. This
happened because the prepare_record function was calling
empty_record macro causing some don't care bits to be left set.
                          
Replacing the empty_record plus explicitly setting defaults with 
restore_record to restore the record default values fixes this.
2009-03-05 20:54:53 +01:00
Sergey Glukhov
aa5441e1c6 automerge 2009-03-05 15:58:04 +04:00
Guangbao Ni
d65f6b54ca Auto merged 2009-03-05 19:01:46 +00:00
Guangbao Ni
4f0f021c33 BUG#41980 SBL, INSERT .. SELECT .. LIMIT = ERROR, even when @@SQL_LOG_BIN is 0 !
When binlog_format is STATEMENT and the statement is unsafe before,
the unsafe warning/error message was issued without checking
whether the SQL_LOG_BIN was turned on or not.
      
Fixed with adding a sql_log_bin_toplevel flag in THD to check
whether SQL_LOG_BIN is ON in current session whatever the current is in sp or not.


mysql-test/suite/binlog/r/binlog_unsafe.result:
  Test case result for unsafe warning/error message
mysql-test/suite/binlog/t/binlog_unsafe.test:
  Test case for unsafe message warning/error
sql/set_var.cc:
  Adding a function set_option_log_bin_bit() which specailly handles to
  the change of SQL_LOG_BIN bit in order to set sql_log_bin_toplevel
  according to SQL_LOG_BIN current value at the same time.
sql/sql_class.cc:
  Initialize the flag sql_log_bin_toplevel in THD::init(),
  and add the condition to check whether unsafe ror message was issued.
sql/sql_class.h:
  Add a sql_log_bin_toplevel flag in THD to indicate whether the toplevel SQL_LOG_BIN is
2009-03-05 18:39:02 +00:00
Sergey Glukhov
326de4957a Bug#42758 INFORMATION_SCHEMA.COLUMNS is inconsistent
remove 'unsigned', 'zerofill' attributes
from DATA_TYPE column value.


mysql-test/suite/funcs_1/r/is_columns_innodb.result:
  result fix
mysql-test/suite/funcs_1/r/is_columns_memory.result:
  result fix
mysql-test/suite/funcs_1/r/is_columns_myisam.result:
  result fix
sql/sql_show.cc:
  remove 'unsigned', 'zerofill' attributes 
  from DATA_TYPE column value.
2009-03-05 15:15:47 +04:00
Staale Smedseng
61f905cfa1 Missing change to funcs_1.myisam_views after push of Bug#29458 2009-03-04 13:18:56 +01:00
Leonard Zhou
63c9bb320f BUG#39526 sql_mode not retained in binary log for CREATE PROCEDURE
Set wrong sql_mode when creating a procedure. 
So that the sql_mode can't be writen into binary log correctly.
      
Restore the current session sql_mode right before generating the binlog event
when creating a procedure.

mysql-test/suite/binlog/r/binlog_sql_mode.result:
  Test result
mysql-test/suite/binlog/t/binlog_sql_mode.test:
  Test file for sql_mode testing
sql/sp.cc:
  Restore the current session sql_mode right before generating the binlog event.
2009-02-28 09:35:18 +08:00
Tatiana A. Nurnberg
fe09326edf automerge 2009-02-27 21:43:43 +01:00
Staale Smedseng
8eb09f0149 Commit for merge and push 2009-02-27 17:06:23 +02:00
Staale Smedseng
97b68934bc Recommit for merging and pushing 2009-02-27 16:11:15 +02:00
Patrick Crews
df09ddaced Bug#40178: Test main.completion_type_func does not clean up / needs to be rewritten
Revised the test to include a test of completion_type = 1 as well as making the test more readable / worthwhile
Removed the master.opt file as it was redundant / unnecessary.

mysql-test/suite/sys_vars/t/completion_type_func-master.opt:
  Removed as redundant.  Test uses include/have_innodb.inc.
2009-02-24 16:20:00 +02:00
Leonard Zhou
2b3dfbc176 merge 2009-02-23 16:29:39 +08:00
Leonard Zhou
61d706a4f0 Bug#40013 mixed replication: row based format could lead to stale tmp tables on the
slave.

In mixed mode, if we create a temporary table and do some update which switch to ROW format,
the format will keep in ROW format until the session ends or the table is dropped explicitly. 
When the session ends, the temp table is dropped automaticly at cleanup time.
but it checks only current binlog format and so skip insertion of DROP TABLE instructions into binlog.
So the temp table can't be dropped correctly at slave.

Our solution is that when closing temp tables at cleanup time we check both binlog format and binlog mode,
and we could write DROP TABLE instructions into binlog if current binlog format is ROW but in MIX mode.

mysql-test/suite/rpl/r/rpl_temp_table_mix_row.result:
  Test result file.
mysql-test/suite/rpl/t/rpl_temp_table_mix_row.test:
  Test file.
sql/sql_base.cc:
  Didn't do binloging when both current format and default format are ROW.
2009-02-23 11:26:38 +08:00
Alfranio Correia
d822ab8957 BUG#38174 secure-file-priv breaks LOAD DATA INFILE replication in statement mode
If secure-file-priv was set on slave, it became unable to execute
LOAD DATA INFILE statements sent from master using mixed or
statement-based replication.
                  
This patch fixes the issue by ignoring this security restriction
and checking if the files are created and read by the slave in the
--slave-load-tmpdir while executing the SQL Thread.
2009-02-21 09:36:07 +00:00
Patrick Crews
11a206a37c auto merge 2009-02-20 08:37:07 -05:00
Mattias Jonsson
330f9fb5a5 merge into an updated 5.1-bugteam. 2009-02-20 11:21:45 +01:00
Mattias Jonsson
3d156e223e pre push test result update for bug#38719
Updated with the correct error message.
2009-02-20 10:27:32 +01:00
Patrick Crews
e9b4b536f3 merge 5.0 -> 5.1
These are only 5.0's fixes being merged.
5.1 and 6.0 Unix-removals will occur in different patches.
2009-02-19 18:24:25 -05:00
Serge Kozlov
b86dc86ee9 Bug#41423.
1. Constant values of binlog positions replaced by seeking them in binlog/relay log.
2. Updated result file
2009-02-19 23:29:12 +03:00
Michael Widenius
945fa0d913 Merge with mysql-maria tree
mysql-test/t/variables.test:
  Reset delay_key_write, otherwise maria.maria test may fail
sql/set_var.cc:
  Reset ha_open_options if one resets the delay_key_write variable.
  Before there was no way to reset it without restarting mysqld, which caused some tests to fail
2009-02-19 11:01:25 +02:00
Mattias Jonsson
5f58510a09 Backport of test results for Bug#38719 from 6.0 to 5.1
post push fix, Bug#38719, additional test cases updated
2009-02-18 22:35:28 +01:00
Mattias Jonsson
bf442fcaae Backport of bug#36001 from 6.0 to 5.1 2009-02-18 21:22:56 +01:00
Michael Widenius
8526274c21 LPBug #330611: test maria.maria fails if server built without '--with-partition' 2009-02-18 16:40:51 +02:00
Matthias Leich
fecaef26af Merge of fix for Bug 42836 into GCA tree 2009-02-16 20:43:34 +01:00
Andrei Elkin
924950b631 commenting windows disable for rpl_cross_version to relate to Bug #42879 2009-02-16 14:51:39 +02:00
Davi Arnaut
d3a10ec6ef Bug#41077: Warning contains wrong future version
Substitute all references of MySQL version "5.2" to "6.0" in
deprecation warning messages.Deprecated constructs are being
removed in the 6.0 tree.
2009-02-16 08:38:15 -03:00
Andrei Elkin
cd1960ff26 rpl_cross_version.test is disable for win till a proper fixing bug#42451 2009-02-16 10:49:51 +02:00
Alexey Kopytov
d945db1ddd Take additional precision into account 2009-02-15 14:11:50 +03:00
Michael Widenius
a8fdaa6f2c Merge with base MySQL 5.1
Contains fixes for test cases
Changed release tag to beta

configure.in:
  change release tag to beta
2009-02-15 12:58:34 +02:00
Alexey Kopytov
8efeeb8bd2 Merge mysql-5.0-bugteam -> mysql-5.1-bugteam 2009-02-14 19:00:11 +03:00
Alexey Kopytov
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
Matthias Leich
59c8a307fe Fix for Bug#42836 Funcs_1 storedproc and storedproc_08 tests failing 2009-02-13 19:07:56 +01:00
Andrei Elkin
de9da6dd32 merging from the main to a local branch 2009-02-13 18:20:36 +02:00
Guilhem Bichot
704b4845aa merge of 5.1-main into 5.1-maria. Myisam->Maria change propagation will follow.
There were so many changes into mtr (this is the new mtr coming) that I rather
copied mtr from 6.0-main here (at least this one knows how to run Maria tests).
I also fixed suite/maria tests to be accepted by the new mtr.

mysys/thr_mutex.c:
  adding DBUG_PRINT here, so that we can locate where the warning is issued.
2009-02-12 15:08:56 +01:00
Luis Soares
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
Luis Soares
a567ee9b7a merge: 5.1-bt --> 5.1-bt local 2009-02-11 14:52:19 +01:00
Alfranio Correia
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