Commit graph

164414 commits

Author SHA1 Message Date
sjaakola
13a9bcc6be refs #11 #13 - skipping TOI, if all affected tables are temporary 2015-05-08 17:41:04 -04:00
sjaakola
21bc3e3fda refs #2 - added binlog stmt cache reset after commit. This is needed for non-InnoDB statements 2015-05-08 17:41:04 -04:00
dirtysalt
9fdae3eb60 Refs #8: preserve gvwstate.dat for pc recovery feature 2015-05-08 17:41:03 -04:00
Teemu Ollakka
0f405f216e refs #6 fixed compilation errors with -DWITH_DEBUG=1, removed unwanted files 2015-05-08 17:41:03 -04:00
Nirbhay Choubey
8aa84821b4 MDEV-8057: Galera conflicts with InnoDB buffer pool dump
Avoid creating innodb buffer pool dump/load thread if mysqld is started
with wsrep recovery mode (--wsrep-recover).

(Merged fix for lp:1305955 from lp:percona-xtradb-cluster)
2015-04-28 18:59:11 -04:00
Nirbhay Choubey
44b44dd1d7 Comments for wsrep_exec_mode's. 2015-04-22 18:30:27 -04:00
Nirbhay Choubey
0095697784 MDEV-7996 : CURRENT_USER definer does not replicate for triggers
THD's lex->definer initially holds "*current_user" for CURRENT_USER().
As a result when wsrep tries to create the trigger query, it incorrectly
uses "*current_user". Fixed by calling get_current_user() to get the
real current user.

Merged galera_create_trigger.test from github.com/codership/mysql-wsrep.
2015-04-16 16:29:02 -04:00
Nirbhay Choubey
84a4db263a Merge branch '5.5-galera' into 10.0-galera 2015-03-28 17:29:10 -04:00
Nirbhay Choubey
d7445ea6df MDEV-7194: galera fails to replicate DDL queries when using binlog_checksum
Restore fix for MDEV-4328 (revno: 3391) that got accidentally
overwritten while merging :
http://bazaar.launchpad.net/~codership/codership-mysql/5.5-23/revision/3900

Added a test case.
2015-03-27 20:35:37 -04:00
Nirbhay Choubey
6a204546ef MDEV-7798: mysql.server init script can't stop mysqld when WSREP is turned off
wsrep threads should be always be checked for existence & stopped on
server shutdown.
2015-03-24 16:41:04 -04:00
Nirbhay Choubey
555915faa9 Merge branch '5.5-galera' into 10.0-galera
Conflicts:
	mysql-test/suite/galera/r/rpl_row_annotate.result
	sql/rpl_rli.cc
	sql/slave.cc
	sql/wsrep_applier.cc
	sql/wsrep_thd.cc
2015-03-11 13:15:16 -04:00
Nirbhay Choubey
7a6cad5221 Backport fix for MDEV-7673, MDEV-7203 and MDEV-7192 from 10.0-galera 2015-03-11 12:36:00 -04:00
Nirbhay Choubey
100249be6a Merge branch '5.5-galera' into 10.0-galera
Conflicts:
	storage/innobase/dict/dict0dict.c
	storage/xtradb/dict/dict0dict.c
2015-03-10 09:23:03 -04:00
Nirbhay Choubey
07ff90e99b Reduce gcache size to cut down disk usage 2015-03-09 22:55:54 -04:00
Jan Lindström
6c19f51a5f MDEV-7672: Crash creating an InnoDB table with foreign keys
Analysis: after a red-black-tree lookup we use node withouth
checking did lookup succeed or not. This lead to situation
where NULL-pointer was used.

Fix: Add additional check that found node from red-back-tree
is valid.
2015-03-07 22:56:33 -05:00
Nirbhay Choubey
56bbc0a230 Merge branch '5.5-galera' into bb-10.0-galera-merge
Conflicts:
	BUILD/compile-pentium-debug-wsrep
	BUILD/compile-pentium-wsrep
	BUILD/compile-pentium64-wsrep
	CMakeLists.txt
	client/mysqlcheck.c
	cmake/cpack_rpm.cmake
	cmake/install_macros.cmake
	cmake/os/FreeBSD.cmake
	cmake/plugin.cmake
	cmake/wsrep.cmake
	debian/dist/Debian/control
	debian/dist/Debian/mariadb-galera-server-10.0.README.Debian
	debian/dist/Debian/mariadb-galera-server-10.0.postrm
	debian/dist/Debian/mariadb-galera-server-5.5.README.Debian
	debian/dist/Debian/mariadb-galera-server-5.5.dirs
	debian/dist/Debian/mariadb-galera-server-5.5.files.in
	debian/dist/Debian/mariadb-galera-server-5.5.postinst
	debian/dist/Debian/mariadb-galera-server-5.5.postrm
	debian/dist/Debian/mariadb-server-5.5.README.Debian
	debian/dist/Debian/mariadb-server-5.5.postrm
	debian/dist/Debian/rules
	debian/dist/Ubuntu/control
	debian/dist/Ubuntu/mariadb-galera-server-10.0.README.Debian
	debian/dist/Ubuntu/mariadb-galera-server-10.0.postrm
	debian/dist/Ubuntu/mariadb-galera-server-5.5.README.Debian
	debian/dist/Ubuntu/mariadb-galera-server-5.5.dirs
	debian/dist/Ubuntu/mariadb-galera-server-5.5.files.in
	debian/dist/Ubuntu/mariadb-galera-server-5.5.postinst
	debian/dist/Ubuntu/mariadb-galera-server-5.5.postrm
	debian/dist/Ubuntu/mariadb-galera-server-5.5.py
	debian/dist/Ubuntu/mariadb-server-5.5.README.Debian
	debian/dist/Ubuntu/mariadb-server-5.5.postrm
	debian/dist/Ubuntu/rules
	debian/mariadb-galera-server-10.0.NEWS
	debian/mariadb-galera-server-10.0.config
	debian/mariadb-galera-server-10.0.logcheck.ignore.paranoid
	debian/mariadb-galera-server-10.0.logcheck.ignore.server
	debian/mariadb-galera-server-10.0.logcheck.ignore.workstation
	debian/mariadb-galera-server-10.0.mysql-server.logrotate
	debian/mariadb-galera-server-10.0.prerm
	debian/mariadb-galera-server-5.5.NEWS
	debian/mariadb-galera-server-5.5.config
	debian/mariadb-galera-server-5.5.logcheck.ignore.paranoid
	debian/mariadb-galera-server-5.5.logcheck.ignore.server
	debian/mariadb-galera-server-5.5.logcheck.ignore.workstation
	debian/mariadb-galera-server-5.5.mysql-server.logrotate
	debian/mariadb-galera-server-5.5.mysql.init
	debian/mariadb-galera-server-5.5.preinst
	debian/mariadb-galera-server-5.5.prerm
	debian/mariadb-galera-server-5.5.templates
	debian/mariadb-galera-test-10.0.links
	debian/mariadb-galera-test-5.5.dirs
	debian/mariadb-galera-test-5.5.files
	debian/mariadb-galera-test-5.5.links
	debian/mariadb-server-5.5.NEWS
	debian/mariadb-server-5.5.config
	debian/mariadb-server-5.5.logcheck.ignore.paranoid
	debian/mariadb-server-5.5.logcheck.ignore.server
	debian/mariadb-server-5.5.logcheck.ignore.workstation
	debian/mariadb-server-5.5.mysql-server.logrotate
	debian/mariadb-server-5.5.prerm
	debian/mariadb-test-5.5.links
	debian/po/POTFILES.in
	debian/po/ar.po
	debian/po/ca.po
	debian/po/cs.po
	debian/po/da.po
	debian/po/de.po
	debian/po/es.po
	debian/po/eu.po
	debian/po/fr.po
	debian/po/gl.po
	debian/po/it.po
	debian/po/ja.po
	debian/po/nb.po
	debian/po/nl.po
	debian/po/pt.po
	debian/po/pt_BR.po
	debian/po/ro.po
	debian/po/ru.po
	debian/po/sv.po
	debian/po/templates.pot
	debian/po/tr.po
	mysql-test/extra/binlog_tests/binlog.test
	mysql-test/include/mtr_check.sql
	mysql-test/r/innodb_load_xa_with_wsrep.result
	mysql-test/r/mysqld--help.result
	mysql-test/suite/binlog/r/binlog_row_binlog.result
	mysql-test/suite/binlog/r/binlog_stm_binlog.result
	mysql-test/suite/galera/galera_2nodes.cnf
	mysql-test/suite/galera/r/create.result
	mysql-test/suite/galera/t/create.test
	mysql-test/suite/perfschema/r/all_instances.result
	mysql-test/suite/perfschema/r/dml_setup_instruments.result
	mysql-test/suite/wsrep/r/variables.result
	mysql-test/suite/wsrep/t/variables.test
	mysql-test/t/mysqld--help.test
	mysys/default.c
	mysys/thr_lock.c
	scripts/CMakeLists.txt
	scripts/mysqld_safe.sh
	scripts/wsrep_sst_common.sh
	scripts/wsrep_sst_mysqldump.sh
	scripts/wsrep_sst_rsync.sh
	scripts/wsrep_sst_xtrabackup-v2.sh
	sql/event_data_objects.cc
	sql/events.cc
	sql/ha_partition.h
	sql/handler.cc
	sql/handler.h
	sql/lock.cc
	sql/log.cc
	sql/log.h
	sql/log_event.cc
	sql/mdl.cc
	sql/mysqld.cc
	sql/mysqld.h
	sql/rpl_record.cc
	sql/slave.cc
	sql/sp.cc
	sql/sql_acl.cc
	sql/sql_admin.cc
	sql/sql_alter.cc
	sql/sql_base.cc
	sql/sql_class.cc
	sql/sql_class.h
	sql/sql_connect.cc
	sql/sql_insert.cc
	sql/sql_parse.cc
	sql/sql_partition_admin.cc
	sql/sql_prepare.cc
	sql/sql_repl.cc
	sql/sql_show.cc
	sql/sql_table.cc
	sql/sql_trigger.cc
	sql/sys_vars.cc
	sql/transaction.cc
	sql/wsrep_applier.cc
	sql/wsrep_binlog.cc
	sql/wsrep_binlog.h
	sql/wsrep_hton.cc
	sql/wsrep_mysqld.cc
	sql/wsrep_mysqld.h
	sql/wsrep_priv.h
	sql/wsrep_sst.cc
	sql/wsrep_sst.h
	sql/wsrep_thd.cc
	sql/wsrep_thd.h
	sql/wsrep_utils.cc
	sql/wsrep_var.cc
	storage/innobase/dict/dict0dict.c
	storage/innobase/fil/fil0fil.c
	storage/innobase/handler/ha_innodb.cc
	storage/innobase/handler/ha_innodb.h
	storage/innobase/handler/handler0alter.cc
	storage/innobase/include/lock0lock.h
	storage/innobase/include/srv0srv.h
	storage/innobase/include/trx0sys.h
	storage/innobase/include/trx0trx.h
	storage/innobase/lock/lock0lock.c
	storage/innobase/os/os0file.c
	storage/innobase/rem/rem0rec.c
	storage/innobase/row/row0ins.c
	storage/innobase/row/row0upd.c
	storage/innobase/srv/srv0srv.c
	storage/innobase/trx/trx0roll.c
	storage/innobase/trx/trx0sys.c
	storage/innobase/trx/trx0trx.c
	storage/innobase/ut/ut0ut.c
	storage/tokudb/CMakeLists.txt
	storage/xtradb/buf/buf0buf.c
	storage/xtradb/dict/dict0dict.c
	storage/xtradb/handler/ha_innodb.cc
	storage/xtradb/handler/ha_innodb.h
	storage/xtradb/handler/handler0alter.cc
	storage/xtradb/include/lock0lock.h
	storage/xtradb/include/srv0srv.h
	storage/xtradb/include/trx0sys.h
	storage/xtradb/lock/lock0lock.c
	storage/xtradb/os/os0file.c
	storage/xtradb/os/os0proc.c
	storage/xtradb/rem/rem0rec.c
	storage/xtradb/row/row0ins.c
	storage/xtradb/row/row0upd.c
	storage/xtradb/srv/srv0srv.c
	storage/xtradb/srv/srv0start.c
	storage/xtradb/trx/trx0roll.c
	storage/xtradb/trx/trx0sys.c
	storage/xtradb/trx/trx0trx.c
	support-files/mysql.server.sh
	support-files/mysql.spec.sh
	wsrep/CMakeLists.txt
2015-03-06 23:46:35 -05:00
Nirbhay Choubey
d146605124 MDEV-7673: CREATE TABLE SELECT fails on Galera cluster
Enable execution of CREATE TABLE SELECT in total order isolation. Added
a test case.

Contributed by : Andrew W Elble
2015-03-06 13:22:15 -05:00
Nirbhay Choubey
c6acdf7c28 MDEV-7203: replicate_events_marked_for_skip didn't work on Galera cluster
OPTION_SKIP_REPLICATION flag needs to be preserved for events received
on non-originating nodes.
2015-03-06 13:19:49 -05:00
Sergey Vojtovich
6f9e33ecb0 MDEV-7273 - 10.1 fails to start up during tc_log initializations on PPC64
log-tc-size is 24K by default. Page size is 64K on PPC64. But log-tc-
size
must be at least 3 x page size. This is enforced by TC_LOG_MMAP::open()
with a comment: to guarantee non-empty pool.

This all makes server not startable in default configuration on PPC64.

Autosize log-tc-size, so that it's min value= page size * 3, default
value= page size * 6, block size= page size.

Conflicts:
	mysql-test/suite/sys_vars/inc/sysvars_server.inc
	mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result
	mysql-test/t/mysqld--help.test
	sql/mysqld.cc
	sql/sys_vars.cc
2015-03-05 16:59:06 -05:00
Nirbhay Choubey
9af42db613 MDEV-7192: binlog_annotate_row_events not completely compatible with galera
Annotate_rows event needs to be preserved until the last Rows event has
been applied because after it has been applied thd->query points to the
query stored inside this event.
2015-03-05 14:14:00 -05:00
Nirbhay Choubey
73a143ab34 Update galera package name 2015-03-04 19:52:15 -05:00
Nirbhay Choubey
e52a58a5cc Update galera package name 2015-03-04 19:49:17 -05:00
Nirbhay Choubey
aa2904a7f4 MDEV-7560: wsrep* tests depend on the version of galera library
Added an include file to check galera library version.
2015-02-27 22:13:37 -05:00
Nirbhay Choubey
8ee5668033 Changes in wsrep_guess_ip()
* Changed loopback detection to be done via ifa->ifa_flags
* Removed unused function wsrep_guess_address()
2015-02-27 17:43:10 -05:00
Nirbhay Choubey
af651c80f7 Merge tag 'mariadb-10.0.17' into 10.0-galera
Conflicts:
	storage/innobase/include/trx0trx.h
2015-02-27 17:36:54 -05:00
Sergei Golubchik
5c66abf0b0 Merge remote-tracking branch 'origin/10.0' into 10.0 2015-02-25 16:34:33 +01:00
Sergey Petrunya
4a3e94e025 MDEV-7413: optimizer_use_condition_selectivity > 2 crashes 10.0.15+maria-1~wheezy
Add a testcase. The bug itself was fixed by the fix for MDEV-7316.
2015-02-25 16:58:36 +03:00
Alexander Barkov
f825b5a4ee MDEV-7629 Regression: Bit and hex string literals changed column names in 10.0.14 2015-02-25 14:13:32 +04:00
Sergei Golubchik
cbf8cdc252 MDEV-7530 !includedir reads files in random order 2015-02-25 09:43:31 +01:00
Nirbhay Choubey
4fb2f66907 Changes in wsrep_guess_ip()
* Changed loopback detection to be done via ifa->ifa_flags
* Removed unused function wsrep_guess_address()
2015-02-24 21:55:22 -05:00
Sergei Golubchik
6c09a72af5 Merge remote-tracking branch 'origin/10.0' into 10.0 2015-02-24 20:52:37 +01:00
Sergei Golubchik
126523d190 MDEV-6703 Add "mysqlbinlog --binlog-row-event-max-size" support
partially cherry-pick from mysql/5.6.
No test case (mysql/5.6 test case is useless, the correct
test case uses too much memory)

commit e061985813db54948f99892d89f7e076242473a5
Author:  <Dao-Gang.Qu@sun.com>
Date:   Tue Jun 1 15:02:22 2010 +0800

    Bug #49931          Incorrect type in read_log_event error
    Bug #49932          mysqlbinlog max_allowed_packet hard coded to 1GB
2015-02-24 15:55:00 +01:00
Sergei Golubchik
73033e5e1a fix mroonga to compile w/o performance schema 2015-02-24 15:54:59 +01:00
Kristian Nielsen
a227cf8046 MDEV-7335: Potential parallel slave deadlock with specific binlog corruption
If somehow the COMMIT or XID event in an event group was missing, the code in
parallel replication to handle this was not sufficient, leading to server
deadlock.
2015-02-24 14:39:15 +01:00
Sergei Golubchik
723be51678 Merge 2015-02-24 14:17:00 +01:00
Jan Lindström
8799f87075 MDEV-7623: Add lock wait time and hold time to every record/table lock in
InnoDB transaction lock printout.
2015-02-24 10:33:49 +02:00
Kristian Nielsen
79e9ff44d1 MDEV-7458: Deadlock in parallel replication can allow following transaction to start replicating too early
In parallel replication, don't rollback inside ha_commit_trans() in case of
error.

The rollback will be done later, but the parallel replication code needs to
run unmark_start_commit() before the rollback to properly control the
sequencing of transactions.

I did not manage to come up with a reliable automatic test case for this, but
I tested it manually.
2015-02-23 13:37:34 +01:00
Kristian Nielsen
41cfdc838e Add error handling on realpath() call.
(Without this, it happened for me that realpath() failed returning
undef for the default vardir. This in turn caused mysql-test-run.pl to
delete the source mysql-test/ directory.)

Backport from 10.1, it's not nice to get one's source directory nuked
by a rouge mysql-test-run.
2015-02-23 13:36:52 +01:00
Jan Lindström
90635c6fb5 MDEV-7620: Transaction lock wait is missing number of lock
waits and total wait time.
2015-02-23 11:24:19 +02:00
Sergei Golubchik
f2cb45daf3 Merge remote-tracking branch 'origin/10.0' into 10.0 2015-02-22 21:45:24 +01:00
Olivier Bertrand
a736e63f7c - Add new Json UDF's Json_Array_Add, Json_Array_Grp and Json_Object_Grp.
Handle longjmp's raised during json processing.
modified:
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/json.cpp
  storage/connect/jsonudf.cpp

- Fix wrong references to the suppressed g->Trace variables.
modified:
  storage/connect/global.h
  storage/connect/plugutil.c
  storage/connect/tabjson.cpp
  storage/connect/tabodbc.cpp
2015-02-22 17:53:02 +01:00
Sergei Golubchik
3653de82e5 test failure on labrador: account for a different errno on Mac OS X 2015-02-22 12:54:52 +01:00
Sergei Golubchik
dc94bd09b8 MDEV-7520 gtid replication broken during upgrade to debian 10.0.16
Don't binlog mariadb setup sql statements:
* use "mysql_install_db --disable-log-bin"
* use "mysqld --bootstrap --disable-log-bin"
* use "SET sql_log_bin=0"
2015-02-22 12:54:52 +01:00
Sergei Golubchik
0ba168020e MDEV-6769 DROP TRIGGER IF NOT EXIST binlogged on master but not on slave
don't return from DROP TRIGGER IF NOT EXISTS on the slave side
early when the trigger couldn't be read
2015-02-22 12:54:52 +01:00
Sergei Golubchik
b739103f12 MDEV-7591 master crashed when slave specfied a future position with semi-repl plugin
cherry-pick the upstream fix

commit d4ba10184cd7bde9c31c610e664ecd0c93605c46
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Wed Jul 2 11:34:11 2014 +0530

    Bug#17453826:ASSERTION ERROR WHEN SETTING FUTURE BINLOG
    FILE/POS WITH SEMISYNC

    Problem:
    ========
    When DMLs are in progress on the master stopping a slave and
    setting ahead binlog name/pos will cause an assert on the
    master.
    ...
2015-02-22 12:54:52 +01:00
Sergei Golubchik
22cf2f117a MDEV-7482 VIEW containing INTERVAL(...)
Item_func::print() prints itself as name + "(" + arguments + ")".
Normally that works, but Item_func_interval internally implements its
arguments as one single Item_row. Item_row prints itself as
"(" + values + ")". As a result, "INTERVAL(1,2)" was being printed
as "INTERVAL((1,2))". Fixed with a custom Item_func_interval::print().
2015-02-22 12:54:52 +01:00
Nirbhay Choubey
f02fdb6b55 MDEV-7615: remove galera_sst_mode.result file 2015-02-20 22:11:45 -05:00
Nirbhay Choubey
f68ce68604 MDEV-7615: Remove --galera-sst-mode option from mysqldump
Removed 'galera-sst-mode' option from mysqldump and added logic
in wsrep_sst_mysqldump script to retrieve gtid_binlog_state from
donor node and send it to the joiner node.
2015-02-20 17:51:33 -05:00
Nirbhay Choubey
2a798cef78 MDEV-7615: Remove --galera-sst-mode option from mysqldump
Removed 'galera-sst-mode' option from mysqldump as its no longer needed.
2015-02-20 17:45:18 -05:00
Nirbhay Choubey
360ff3b0da Fix for build failures on Power8 2015-02-20 17:29:03 -05:00