Commit graph

55201 commits

Author SHA1 Message Date
Kristofer Pettersson
5ef4fb2417 Bug#29507 TRUNCATE shows to many rows effected
TRUNCATE TABLE for InnoDB tables returned a count showing an approximation
of the number of rows affected to gain efficiency.
Now the statement always returns 0 rows affected for clarity.

sql/sql_delete.cc:
  * Set row count to 0 if auto increment was reset which can happen
  if TRUNCATE TABLE was issued.
2008-11-03 14:08:42 +01:00
Mats Kindahl
c3a5b59676 Bug #40360: Binlog related errors with binlog off
When statement-based replication is used, and the
transaction isolation level is READ-COMMITTED or stricter,
InnoDB will print an error because statement-based
replication might lead to inconsistency between master
and slave databases. However, when the binary log is not
engaged, this is not an issue and an error should
not be printed.

This patch makes thd_binlog_format() return BINLOG_FORMAT_
UNSPEC when the binary log is not engaged for the given
thread.

mysql-test/t/innodb_mysql.test:
  Adding test that no error message is printed from inside
  InnoDB when the binary log is turned off.
2008-11-03 12:14:48 +01:00
Georgi Kodinov
e1fb0c9a1a merged 5.1-bugteam -> B33811 5.1 working tree 2008-11-03 12:44:55 +02:00
Georgi Kodinov
0d4aeaf6e3 merged 5.0 bug 33811 -> 5.1 bug 33811 working tree 2008-11-03 12:40:58 +02:00
Andrei Elkin
1cd0d8caf6 Bug #38230 Differences between master and slave after UPDATE or DELETE with LIMIT with pk
a test on the bug page does not reveal the problem with the latest trees.

Adding the test to the rpl suite in order to monitor regression.


mysql-test/extra/rpl_tests/rpl_row_basic.test:
  a regression test for the bug#38230.
mysql-test/suite/rpl/r/rpl_row_basic_3innodb.result:
  results changed.
2008-11-03 12:18:37 +02:00
Georgi Kodinov
6af9982569 merged 5.0-bugteam -> bug 33811-5.0-bugteam working tree 2008-11-03 11:50:32 +02:00
Ramil Kalimullin
84356ab0ad Merge 2008-10-31 14:02:06 +04:00
Kristofer Pettersson
c82ff58222 merge 5.0-bugteam -> 5.1-bugteam 2008-10-31 10:51:42 +01:00
Kristofer Pettersson
42659fb82d Fixed race condition in test case status2. A 'disconnect' issues an
implicit command which isn't completed immediately.


mysql-test/r/status2.result:
  * Moved disconnect command to avoid race.
mysql-test/t/status2.test:
  * Moved disconnect command to avoid race.
2008-10-31 10:25:03 +01:00
Mattias Jonsson
ea0fab9baf post-push fix for build warnings 2008-10-30 09:25:25 +01:00
Mattias Jonsson
58d2372b15 merge 2008-10-29 23:01:41 +01:00
Mats Kindahl
e030732861 Merging with 5.1-5.1.29-rc 2008-10-29 21:43:15 +01:00
Mats Kindahl
e68609848f Bug #40004: Replication failure with no PK + no indexes
Adding comments to test cases.
2008-10-29 21:37:51 +01:00
Mattias Jonsson
fc74c4d9e5 merge 2008-10-29 21:30:04 +01:00
Mattias Jonsson
b72d1507db Bug#39084: Getting intermittent errors with statement-based binary logging
Problem was that partitioning cached the table flags.
These flags could change due to TRANSACTION LEVEL changes.
Solution was to remove the cache and always return the table flags
from the first partition (if the handler was initialized).

mysql-test/r/partition_innodb_stmt.result:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  New test result file.
mysql-test/t/partition_innodb_stmt.test:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  New test file.
sql/ha_partition.cc:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  Removed m_table_flags, and added m_handler_status.
  Added checks that all partitions have the same
  table flags.
  Moved some variable initializations.
  Updated some comments.
  Fixed typo initialise -> initialize
  Changed HA_EXTTA_NO_READCHECK to do nothing, since it
  is only used in ha_open, which is called for every
  partition in ::open anyway.
sql/ha_partition.h:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  Removed m_table_flags, and added m_handler_status.
  Always return the first partitions table flags, instead of using
  cached table flags.
  Added define of enabled/disabled partitioning table flags
  Fixed type initialise -> initialize
  Updated some comments.
sql/handler.cc:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  Fixed type initialise -> initialize.
sql/handler.h:
  Bug#39084: Getting intermittent errors with statement-based binary logging
  
  Added comment to understand where the cached value is set.
2008-10-29 21:20:04 +01:00
unknown
1c32bdd271 Merge from mysql-5.1.29-rc-release 2008-10-27 22:26:58 +01:00
Alexey Botchkov
8b1f501c70 merging 2008-10-27 19:56:43 +04:00
Evgeny Potemkin
6e0c62fd6c Merged fix for the bug#37870. 2008-10-27 19:36:27 +03:00
Evgeny Potemkin
545e4c58b2 Corrected fix for the bug#37870. 2008-10-27 19:19:26 +03:00
Alexey Botchkov
6ca7e5c549 Bug#39102 valgrind build does not compile in realpath, which make DATA/INDEX DIR fail
#ifdef HAVE_purify removed

per-file comments:
  mysql-test/t/partition_not_windows.test
Bug#39102 valgrind build does not compile in realpath, which make DATA/INDEX DIR fail 
    test reenabled

  mysys/my_symlink.c
Bug#39102 valgrind build does not compile in realpath, which make DATA/INDEX DIR fail 
  superfluous ifdef removed, comments fixed
2008-10-27 19:25:11 +04:00
Sergey Glukhov
caa73f2218 automerge 2008-10-27 17:11:44 +04:00
Evgeny Potemkin
fbb6efeb51 Merged fix for the bug#37870. 2008-10-27 15:04:51 +03:00
Sergey Glukhov
903c4dcf3b 5.0-bugteam->5.1-bugteam merge(bug#39040) 2008-10-27 15:58:51 +04:00
Sergey Glukhov
380f1a8440 Bug#39040 valgrind errors/crash when creating views with binlog logging enabled
A string buffers which were included in the 'view' data structure
were allocated on the stack, causing an invalid pointer when used
after the function returned.
The fix: use copy of values for view->md5 & view->queries


mysql-test/r/view.result:
  test result
mysql-test/t/view.test:
  test case
sql/sql_view.cc:
  A string buffers which were included in the 'view' data structure
  were allocated on the stack, causing an invalid pointer when used
  after the function returned.
  The fix: use copy of values for view->md5 & view->queries
2008-10-27 14:22:38 +04:00
Evgeny Potemkin
e27e560783 Bug#37870: Usage of uninitialized value caused failed assertion.
The convert_constant_item function converts a constant to integer using
field for condition like 'field = a_constant'. When the convert_constant_item
is called for a subquery the outer select is already being executed, so
convert_constant_item saves field's value to prevent its corruption.
For EXPLAIN field's value isn't initialized thus when convert_constant_item
tries to restore saved value it fails assertion.
      
Now the convert_constant_item doesn't save/restore field's value
for EXPLAIN.


mysql-test/r/explain.result:
  Added a test case for the bug#37870.
mysql-test/t/explain.test:
  Added a test case for the bug#37870.
sql/item_cmpfunc.cc:
  Bug#37870: Usage of uninitialized value caused failed assertion.
  Now the convert_constant_item doesn't save/restore field's value
  for EXPLAIN.
2008-10-27 12:26:32 +03:00
V Narayanan
8d108cb53b Bug#39571 abi_check Does not create all prerequisites
The abi_check target instroduced as part of WL#4380 verifies
changes to mysql.h. mysql.h in turn includes mysql_version.h.
mysql_version.h is a file that is generated during the configure
phase. We must ensure that mysql_version.h is cleaned only during
distclean and not during clean.

include/Makefile.am:
  This file contains the following changes
  
  1) Moves the cleaning of mysql_version.h from the clean
     phase to the distclean phase.
  
  2) Removes mysql_version.h.in from noinst_HEADERS, this
     entry was reduntant since by virtue of inclusion of
     mysql_version.h mysql_version.h.in is already included.
2008-10-27 12:53:28 +05:30
Serge Kozlov
eafe728fc5 Bug#22442, removed number of port 2008-10-26 22:34:24 +03:00
Serge Kozlov
1108ba23e0 Bug#22442.
1. Replace --sleep by wait_* primitive
2. Vertical output for SHOW SLAVE STATUS
3. Updated result file
2008-10-26 21:53:21 +03:00
Davi Arnaut
460a90b0bf Post-merge fix: Update warning number due to repositioning in the error list.
mysql-test/r/partition_windows.result:
  Update warning number due to new errors appearing earlier
  in the list.
mysql-test/r/windows.result:
  Update warning number due to new errors appearing earlier
  in the list.
2008-10-26 15:05:24 -02:00
Davi Arnaut
d4438c99ff Merge from mysql-5.1-5.1.29-rc into mysql-5.1-bugteam 2008-10-24 11:58:48 -02:00
Davi Arnaut
463c837c3a Merge from mysql-5.0-bugteam into mysql-5.1-bugteam
mysql-test/r/partition_not_windows.result:
  Update warning number due to new errors appearing earlier
  in the list.
mysql-test/r/partition_symlink.result:
  Update warning number due to new errors appearing earlier
  in the list.
mysql-test/r/symlink.result:
  Update warning number due to new errors appearing earlier
  in the list.
2008-10-24 10:50:59 -02:00
unknown
408523b772 Raise version number after cloning 5.0.72 2008-10-24 11:37:40 +02:00
Ramil Kalimullin
256f41edfe Fix for bug#23113: Different behavior on altering ENUM fields between 5.0 and 5.1
Problem: mysqld doesn't detect that enum data must be reinserted performing
'ALTER TABLE' in some cases.

Fix: reinsert data altering an enum field if enum values are changed.


mysql-test/r/alter_table.result:
  Fix for bug#23113: Different behavior on altering ENUM fields between 5.0 and 5.1
    - test result.
mysql-test/t/alter_table.test:
  Fix for bug#23113: Different behavior on altering ENUM fields between 5.0 and 5.1
    - test case.
sql/field.cc:
  Fix for bug#23113: Different behavior on altering ENUM fields between 5.0 and 5.1
    - Field_enum::is_equal() introduced, which is called to detect that a field
  is changing by 'ALTER TABLE'.
sql/field.h:
  Fix for bug#23113: Different behavior on altering ENUM fields between 5.0 and 5.1
    - Field_enum::is_equal() introduced, which is called to detect that a field
  is changing by 'ALTER TABLE'.
2008-10-24 13:00:03 +05:00
Sergey Petrunia
d5202ddd31 Merge 2008-10-24 06:37:29 +04:00
Sergey Petrunia
844797c492 BUG#38072: Wrong result: HAVING not observed in a query with aggregate
- Make send_row_on_empty_set() return FALSE when simplify_cond() has found out
  that HAVING is always FALSE
re-committing to put the fix into 5.0 and 5.1

mysql-test/r/group_by.result:
  BUG#38072: Wrong result: HAVING not observed in a query with aggregate
  - Testcase
mysql-test/t/group_by.test:
  BUG#38072: Wrong result: HAVING not observed in a query with aggregate
  - Testcase
sql/sql_select.h:
  BUG#38072: Wrong result: HAVING not observed in a query with aggregate
  - Make send_row_on_empty_set() return FALSE when simplify_cond() has found out
    that HAVING is always FALSE
2008-10-24 06:16:22 +04:00
Davi Arnaut
03300dc1a4 Merge from mysql-5.1-5.1.29-rc into mysql-5.1-bugteam 2008-10-23 19:03:26 -02:00
Davi Arnaut
5bc2ad279d Merge from mysql-5.0-5.1.29-rc into mysql-5.0-bugteam 2008-10-23 18:56:03 -02:00
Mattias Jonsson
620d955e3a Bug#40176: update as first partitioning statement
breaks auto increment

The auto_increment value was not initialized if
the first statement after opening a table was
an 'UPDATE'.

solution was to check initialize if it was not,
before trying to increase it in update.

mysql-test/suite/parts/inc/partition_auto_increment.inc:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Added tests for verifying the bug and show some more
  auto_increment flaws
mysql-test/suite/parts/r/partition_auto_increment_archive.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
mysql-test/suite/parts/r/partition_auto_increment_blackhole.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
mysql-test/suite/parts/r/partition_auto_increment_innodb.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
mysql-test/suite/parts/r/partition_auto_increment_memory.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
mysql-test/suite/parts/r/partition_auto_increment_myisam.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
mysql-test/suite/parts/r/partition_auto_increment_ndb.result:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Updated test results, due to added tests
sql/ha_partition.cc:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  make sure that the auto_increment value is initialized
  before updating it.
  
  (missed initializing in mysql_update_row).
sql/ha_partition.h:
  Bug#40176: update as first partitioning statement
  breaks auto increment
  
  Assert that it is initialized, before updating
  the auto_increment value
2008-10-23 22:14:07 +02:00
Vladislav Vaintroub
2559cd1ce5 merge 2008-10-23 22:05:47 +02:00
Vladislav Vaintroub
0d220ba7ca merge fix for Bug40280 from 5.0 2008-10-23 17:59:22 +02:00
Georgi Kodinov
8e6277fb1c merged 5.0-5.1.29-rc -> 5.1-5.1.29-rc 2008-10-23 17:09:19 +03:00
Georgi Kodinov
6d47da9916 merged 5.1-main to 5.1-5.1.29-rc 2008-10-23 16:39:21 +03:00
Georgi Kodinov
0b6eee262f merged 5.0 main -> 5.0-5.1.29-rc 2008-10-23 16:35:44 +03:00
Vladislav Vaintroub
49ff055736 Bug#40280: Message compiler(mc.exe) needed to compile MySQL on windows.
Visual Studio 2008 Express edition does not include message compiler mc.exe
It is not possible to build MySQL server if only VC2008 Express is installed,
because we use mc.exe to generate event log messages.

This patch removes the mc.exe dependency. Generated files message.h, 
message.rc and MSG00001.bin  are checked into source code repository.
Instructions on how to add or change messages are added to messages.mc
2008-10-23 15:28:53 +02:00
Joerg Bruehe
f5b4268a8a Upmerge 5.0-build -> 5.1-build
(null-merge, just the merge changesets, all base changes are already in)
2008-10-23 12:02:00 +02:00
Joerg Bruehe
ba258ab2ec Merge main 5.1 -> 5.1-build 2008-10-23 11:51:30 +02:00
Sven Sandberg
a0b823cdfc Merged new test case for BUG#39812 to the head of 5.1 2008-10-22 16:45:29 +02:00
Sven Sandberg
bf5a6dcc69 BUG#39812: Make statement replication default for 5.1 (to match 5.0)
Added test case to check the default value of @@binlog_format.

mysql-test/t/binlog_format_basic.test:
  Added test case to verify the default binlog_format: it should be
  STATEMENT in 5.1 and MIXED in 6.0.
2008-10-22 16:00:45 +02:00
Davi Arnaut
aafe26f4e9 Merge post-merge fix from mysql-5.0-bugteam. 2008-10-21 19:07:31 -02:00
Davi Arnaut
07b7261a70 Post-merge fix: drop table at the end of test.
mysql-test/r/xa.result:
  Update test case result.
mysql-test/t/xa.test:
  Drop table used for test.
2008-10-21 19:02:26 -02:00