Commit graph

60413 commits

Author SHA1 Message Date
Luis Soares
7d213e8314 BUG#51021: current_stmt_binlog_row_based not removed in next-mr
Deployed DBUG_ASSERT before the conditional binlog format
restore.
2010-02-10 16:01:31 +00:00
Luis Soares
9ba558302b BUG#51021: current_stmt_binlog_row_based not removed in next-mr
As part of BUG@39934 fix, the public:
 - THD::current_stmt_binlog_row_based 
variable had been removed and replaced by a private variable:
 - THD::current_stmt_binlog_format. 

THD was refactored and some modifiers and accessors were
implemented for the new variable.

However, due to a bad merge, the
THD::current_stmt_binlog_row_based variable is back as a public
member of THD. This in itself is already potentially
harmful. What's even worse is that while merging some more
patches and resolving conflicts, the variable started being used
again, which is obviously wrong.

To fix this we:
  1. remove the extraneous variable from sql_class.h
  2. revert a bad merge for BUG#49132
  3. merge BUG#49132 properly again (actually, making use of the
     cset used to merge the original patch to mysql-pe).
2010-02-09 17:22:31 +00:00
Alexander Nozdrin
68ac1c9c28 1. Disable ndb_condition_pushdown.test due to Bug 49746.
2. Update test result files.
2010-02-09 13:16:01 +03:00
Alexander Nozdrin
a88cb29392 Manual merge from mysql-trunk.
Conflicts:
  - mysql-test/suite/ndb/r/ndb_dd_ddl.result
2010-02-09 13:14:29 +03:00
Alexander Nozdrin
0d9f6bccd3 Fix ndb_dd_ddl.test: drop created database after use. 2010-02-09 13:10:36 +03:00
Alexander Nozdrin
9ef12dceec Auto-merge from mysql-trunk. 2010-02-09 13:09:20 +03:00
Joerg Bruehe
fc5e9a4a54 Upmerge "configure.in" text change from 5.1 to 5.5 ("trunk"),
fixing bug#50950.
2010-02-08 22:16:07 +01:00
Joerg Bruehe
f6df1770fc Upmerge "configure.in" text change from 5.0 to 5.1,
fixing bug#50950.
2010-02-08 21:40:17 +01:00
Joerg Bruehe
15728d0721 Bug#50950 Obsolete reference to www.mysql.com
in message printed at end of configure

New text for the success message of "configure".
2010-02-08 21:10:37 +01:00
Alexander Nozdrin
19df110369 Auto-merge from mysql-trunk-merge. 2010-02-05 18:33:33 +03:00
Alexander Nozdrin
a93d838a12 Cherry-pick merge from mysql-5.1-bugteam.
Original revision:
------------------------------------------------------------
revision-id: kent.boortz@sun.com-20100204182709-dw1dwpglkd5qrehb
committer: Kent Boortz <kent.boortz@sun.com>
branch nick: mysql-5.1-bugteam
timestamp: Thu 2010-02-04 19:27:09 +0100
message:
  LT_INIT and LT_PREREQ was added in libtool 2.2 2008, a bit too
  recent, switched back to the older AC_PROG_LIBTOOL
------------------------------------------------------------
2010-02-05 18:31:06 +03:00
Alexander Nozdrin
1b4b3f3e5b Auto-merge (empty) from mysql-trunk-merge. 2010-02-05 18:24:50 +03:00
Alexander Nozdrin
950e907bf7 Manual merge (empty) from mysql-5.1. 2010-02-05 18:14:01 +03:00
Alexander Nozdrin
bdbcea3f65 Auto-merge from mysql-next-mr. 2010-02-05 18:06:46 +03:00
Alexander Nozdrin
7366b09c26 Remove errmsg.txt and errmsg-cnv.sh. Use errmsg-utf8.txt instead. 2010-02-05 16:52:35 +03:00
hery.ramilison@sun.com
1c9ab8d6ee Raise version number after cloning 5.1.44 2010-02-04 12:23:33 +01:00
Georgi Kodinov
3e699a7972 merge 2010-02-04 12:14:44 +02:00
Georgi Kodinov
21dbe024cd tree name change 2010-02-04 12:13:29 +02:00
Alexander Nozdrin
9ee5543be9 Fix test result file after manual merge. 2010-02-04 09:35:40 +03:00
Alexander Nozdrin
8bf60770a5 Manual merger from mysql-trunk-merge.
Conflicts:
  - configure.in
2010-02-04 00:52:48 +03:00
Alexander Nozdrin
40d93c7167 Manual merge from mysql-trunk-merge.
Conflicts:
  - configure.in
2010-02-04 00:37:59 +03:00
Alexander Nozdrin
9d55dab9c7 Manual merge from mysql-trunk-merge.
Conflicts:
  - sql/sql_show.cc
2010-02-03 23:26:58 +03:00
Alexander Nozdrin
69cb0a8035 Manual merge from mysql-trunk-merge.
Conflicts:
  - sql/sql_select.cc
2010-02-03 23:15:57 +03:00
Alexander Nozdrin
4c8fd3cf57 Manual merge from mysql-5.1-bugteam.
Conflicts:
  - configure.in
  - mysql-test/include/setup_fake_relay_log.inc
  - sql/sql_select.cc
2010-02-03 20:22:58 +03:00
Alexander Nozdrin
7bb5169d5e Temporarily null-merge patch for WL#5154 (deprecation WL) to next-mr. 2010-02-03 19:30:41 +03:00
Alexander Nozdrin
f62f1a528b Manual merge from mysql-5.1-bugteam.
Conflicts:
  - sql/mysqld.cc
2010-02-03 19:28:40 +03:00
Alexander Nozdrin
9dc8347c1e Manual merge from mysql-trunk-merge.
Conflicts:
  - mysql-test/t/bug46080.test
2010-02-03 19:21:17 +03:00
Georgi Kodinov
ea992477af merge 2010-02-03 17:27:55 +02:00
Georgi Kodinov
38f8869703 merge 2010-02-03 17:25:29 +02:00
Georgi Kodinov
4600c79d34 merge 2010-02-03 17:05:06 +02:00
Alexander Nozdrin
31ba3bf5cb Manual merge from mysql-5.1-bugteam.
Conflicts:
  - mysql-test/collections/default.experimental
  - mysql-test/suite/rpl/r/rpl_sp.result
2010-02-03 17:01:48 +03:00
Kent Boortz
21a6569952 Adjuster the parsing of "configure.in" version number line 2010-02-03 14:52:11 +01:00
Luis Soares
90f7cfa6ac automerge mysql-5.1-bugteam bug clone --> mysql-5.1-bugteam latest. 2010-02-03 12:12:51 +00:00
Kent Boortz
480663e431 Changes to be able to create source TAR packages with longer
path names than 99 characters, using the USTAR format of the
resulting source TAR.

To be able to specify the use of USTAR when creating the source
TAR, we needed both to update the GNU autotools version requirements
slightly, and update the initiation of the tools to use more
modern constructs.
2010-02-02 23:29:14 +01:00
Georgi Kodinov
4cfda7fd3b Bug #49445: Assertion failed: 0, file .\item_row.cc, line 55 with
fulltext search and row op.

The search for fulltext indexes is searching for some special 
predicate layouts. While doing so it's not checking for the number
of columns of the expressions it tries to calculate.
And since row expressions can't return a single scalar value there
was a crash.
Fixed by checking if the expressions are scalar (in addition to 
being constant) before calling Item::val_xxx() methods.
2010-02-02 18:37:56 +02:00
Magne Mahre
632cf4c502 Cleanup fix for WL#5154 that splits commands handling for
--default-character-set and --character-set-server such
that only the first will give a deprecation warning.
Apart from that, the two options should do the same.
2010-02-02 16:34:32 +01:00
Luis Soares
d8bd11e5b1 BUG#47639: The rpl_binlog_corruption test fails on Windows
The test case rpl_binlog_corruption fails on windows because when
adding a line to the binary log index file it gets terminated
with a CR+LF (which btw, is the normal case in windows, but not on
Unixes - LF). This causes mismatch between the relay log names,
causing mysqld to report that it cannot find the log file.

We fix this by creating the instrumented index file through
mysql, ie, using SELECT ... INTO DUMPFILE ..., as opposed on
relying on ultimatly OS commands like: -- echo "..." >
index. These changes go into the file and make the procedure
platform independent:

  include/setup_fake_relay_log.inc

Side note: when using SELECT ... INTO DUMPFILE ..., one needs to
check if mysqld is running with secure_file_priv. If it is, we do
it in two steps: 1. create the file on the allowed location;
2. move it to the datadir. If it is not, then we just create the
file directly on the datadir (so previous step 2. is not needed).
2010-02-02 15:16:47 +00:00
Alexander Nozdrin
f392eddabc Revert a patch for Bug#48231, which introduced valgrind warnings.
Original revision:
------------------------------------------------------------
revision-id: li-bing.song@sun.com-20100130124925-o6sfex42b6noyc6x
parent: joro@sun.com-20100129145427-0n79l9hnk0q43ajk
committer: <Li-Bing.Song@sun.com>
branch nick: mysql-5.1-bugteam
timestamp: Sat 2010-01-30 20:49:25 +0800
message:
  Bug #48321  CURRENT_USER() incorrectly replicated for DROP/RENAME USER;
              REVOKE/GRANT; ALTER EVENT.
  
  The following statements support the CURRENT_USER() where a user is needed.
    DROP USER 
    RENAME USER CURRENT_USER() ...
    GRANT ... TO CURRENT_USER()
    REVOKE ... FROM CURRENT_USER()
    ALTER DEFINER = CURRENT_USER() EVENT
  but, When these statements are binlogged, CURRENT_USER() just is binlogged
  as 'CURRENT_USER()', it is not expanded to the real user name. When slave 
  executes the log event, 'CURRENT_USER()' is expand to the user of slave 
  SQL thread, but SQL thread's user name always NULL. This breaks the replication.
  
  After this patch, All above statements are rewritten when they are binlogged.
  The CURRENT_USER() is expanded to the real user's name and host.
------------------------------------------------------------
2010-02-02 16:38:44 +03:00
Davi Arnaut
1a6ab2267f Fix for valgrind warning: check whether pointer was initialized. 2010-02-02 11:17:58 -02:00
Georgi Kodinov
be89d30f36 fixed various pb2 test failures on windows. 2010-02-02 14:17:21 +02:00
Alexander Nozdrin
8a685b3ce5 BUG#50767: Some RPL tests started to fail in next-mr-merge on
Linux x86_64 debug

Two test cases fail because the suppression for the unsafe
warning needs to be updated (BUG@39934 refactored this part and
these changes are only in mysql-next-mr - this is why we notice
them now when merging in next-mr). This is the case for
rpl_nondeterministic_functions and rpl_misc_functions test
cases. rpl_stm_binlog_direct test case is not needed in version >
5.1. The rpl_heartbeat_basic test case fails because patch for
BUG@50397 removed the CHANGE MASTER in the slave that would set
it's period to 1/10 of the master. This would cause the test
assertion to fail.

The fixes for the issues described above are:

 - rpl_misc_functions - updated suppression message
 - rpl_nondeterministic_functions - updated suppression message
 - rpl_stm_binlog_direct - removed the test case (it is not 
                           needed in versions > 5.1)
 - rpl_heartbeat_basic - deployed instruction: 
   CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD=0.1;
2010-02-02 12:26:28 +03:00
Alexander Nozdrin
33e5e125f5 Manual merge of patch for Bug#46364 from mysql-next-mr-bugfixing.
Conflicts:
  - mysql-test/r/mysqld--help-win.result
  - sql/sys_vars.cc

Original revsion (in next-mr-bugfixing):
------------------------------------------------------------
revno: 2971 [merge]
revision-id: alfranio.correia@sun.com-20100121210527-rbuheu5rnsmcakh1
committer: Alfranio Correia <alfranio.correia@sun.com>
branch nick: mysql-next-mr-bugfixing
timestamp: Thu 2010-01-21 21:05:27 +0000
message:
  BUG#46364 MyISAM transbuffer problems (NTM problem)
        
  It is well-known that due to concurrency issues, a slave can become
  inconsistent when a transaction contains updates to both transaction and
  non-transactional tables.
                      
  In a nutshell, the current code-base tries to preserve causality among the
  statements by writing non-transactional statements to the txn-cache which
  is flushed upon commit. However, modifications done to non-transactional
  tables on behalf of a transaction become immediately visible to other
  connections but may not immediately get into the binary log and therefore
  consistency may be broken.
              
  In general, it is impossible to automatically detect causality/dependency
  among statements by just analyzing the statements sent to the server. This
  happen because dependency may be hidden in the application code and it is
  necessary to know a priori all the statements processed in the context of
  a transaction such as in a procedure. Moreover, even for the few cases that
  we could automatically address in the server, the computation effort
  required could make the approach infeasible.
              
  So, in this patch we introduce the option
        - "--binlog-direct-non-transactional-updates" that can be used to bypass
        the current behavior in order to write directly to binary log statements
        that change non-transactional tables.
  
  Besides, it is used to enable the WL#2687 which is disabled by default.
    ------------------------------------------------------------
    revno: 2970.1.1
    revision-id: alfranio.correia@sun.com-20100121131034-183r4qdyld7an5a0
    parent: alik@sun.com-20100121083914-r9rz2myto3tkdya0
    committer: Alfranio Correia <alfranio.correia@sun.com>
    branch nick: mysql-next-mr-bugfixing
    timestamp: Thu 2010-01-21 13:10:34 +0000
    message:
      BUG#46364 MyISAM transbuffer problems (NTM problem)
            
      It is well-known that due to concurrency issues, a slave can become
      inconsistent when a transaction contains updates to both transaction and
      non-transactional tables.
                          
      In a nutshell, the current code-base tries to preserve causality among the
      statements by writing non-transactional statements to the txn-cache which
      is flushed upon commit. However, modifications done to non-transactional
      tables on behalf of a transaction become immediately visible to other
      connections but may not immediately get into the binary log and therefore
      consistency may be broken.
                  
      In general, it is impossible to automatically detect causality/dependency
      among statements by just analyzing the statements sent to the server. This
      happen because dependency may be hidden in the application code and it is
      necessary to know a priori all the statements processed in the context of
      a transaction such as in a procedure. Moreover, even for the few cases that
      we could automatically address in the server, the computation effort
      required could make the approach infeasible.
                  
      So, in this patch we introduce the option
            - "--binlog-direct-non-transactional-updates" that can be used to bypass
            the current behavior in order to write directly to binary log statements
            that change non-transactional tables.
      
      Besides, it is used to enable the WL#2687 which is disabled by default.
2010-02-02 10:56:42 +03:00
Alexander Nozdrin
562c6046d4 Remove binlog_direct_non_transactional_updates_basic.test and
binlog_direct_non_transactional_updates_basic.result. They will
be added by a cherry-picking merge from mysql-next-mr-bugfixing
(Bug#50766).
2010-02-02 10:41:31 +03:00
Alexander Nozdrin
481107dac4 Patch for Bug#50766. 2010-02-01 23:27:03 +03:00
Georgi Kodinov
9544f9d1e3 Made outfile_testdata experimental in 5.1-bugteam, pending the
resulution of bug #46895.
2010-02-01 14:05:21 +02:00
Alexander Nozdrin
3faaeab165 Add empty test cases to make sys_vars.all_vars.test pass. 2010-02-01 15:00:13 +03:00
Georgi Kodinov
15ccc8f609 merge 2010-02-01 13:50:30 +02:00
Georgi Kodinov
7d9209680b fixed a typo in bug #49897. 2010-02-01 13:40:16 +02:00
Alexander Nozdrin
4e403d2c1c Update test result file. 2010-01-31 14:43:32 +03:00
Alexander Nozdrin
2dc56b6d39 Null-merge from mysql-trunk-merge. 2010-01-31 14:41:14 +03:00