Commit graph

166828 commits

Author SHA1 Message Date
s.sujatha
70f5d81a96 Bug#20041860: SLAVE ERROR WHEN DROP DATABASE
Fixing a post push test issue.
2015-01-19 18:22:14 +05:30
Thayumanavar
c9f307c456 BUG#19875331 - HANDLE_FATAL_SIGNAL 11 IN STRMAKE
Problem Description And Fix:
Inserting a fudged record in mysql.proc with the dbname
column value as test and the name column as empty, will
cause a crash in mysqld when we run the command DROP
DATABASE test.
 During DROP DATABASE test, mysql_rm_db subsequently
calls lock_db_routines. In the routine we fetch the
field 'name' from mysql.proc by calling the underlying
storage engine API in lock_db_routines. This cause NULL
value as the field column of mysql.proc and subsequent
dereference MDL_request::init leads to crash.
Modifying mysql.proc using SQL command by user is not
supported, but in principle, there is a possibility
of mysql.proc getting corrupted which can also lead
to empty fields and arbitary values. The patch fixes
the crash by checking NULL and propagating the appopriate
error code to the user.
2015-01-19 12:46:41 +05:30
Sergei Golubchik
3f118a74be MDEV-6347 Build RHEL7 packages
add "mysql-compat-server" alias to MariaDB-server package
2015-01-16 18:13:02 +01:00
Sergei Golubchik
2fc0b22f2a restore an incorrectly merged line
it's in the dead code (ifdef-ed out) so it doesn't matter what it is.
still better to keep it closer to the upstream
2015-01-16 17:54:00 +01:00
Rich Prohaska
5bc6c88d99 Merge branch 'master' into releases/tokudb-7.5 2015-01-16 10:11:35 -05:00
Bala
a3e9500823 Bug#17619241 SERVICE OR MYSQLD_SAFE STARTS PICKING WRONG PLUGIN DIRECTORY 2015-01-16 07:27:01 +01:00
Rich Prohaska
25c152b005 DB-777 when a tokudb lock timeout occurs print info about the conflicting queries to the error log 2015-01-15 19:06:39 -05:00
Rich Prohaska
9927d0f930 DB-777 when a tokudb lock timeout occurs print info about the conflicting queries to the error log 2015-01-15 15:56:32 -05:00
Rich Prohaska
44bb19b7d1 DB-788 fix optimize by index name test result 2015-01-15 15:49:37 -05:00
Rich Prohaska
c87f8151ac DB-478 DB-788 DB-789 optimize tokudb table enhancements 2015-01-15 14:09:57 -05:00
Rich Prohaska
23c4a78643 DB-792 link hot backup moved to sql/CMakeLists.txt 2015-01-15 14:04:43 -05:00
Rich Prohaska
17f6d6a310 DB-792 build tokudb backup plugin 2015-01-15 11:49:32 -05:00
Jon Olav Hauglid
2750b4b738 Bug#20344207: Add support for CMake 3.1
Rename a CMake variable in compile_flags.cmake to avoid triggering
CMake 3.1 warning about CMP0054 about interpreting if() arguments
as keywords or variables.

No changes in behavior.
2015-01-15 09:55:01 +01:00
Sergey Vojtovich
ca6b86f420 MDEV-7448 - mtr may leave stale mysqld
Let mtr handle SIGHUP the same way as SIGINT. This solves stale mysqld processes
left after broken/closed ssh connection.
2015-01-14 17:50:38 +04:00
Nirbhay Choubey
d9d994089f MDEV-7368 : SLES: Failed to start mysql.service: Unit
mysql.service failed to load

Added 'systemctl daemon-reload' command in postin and
postun rpm scripts.
2015-01-14 18:24:23 -05:00
Rich Prohaska
7629f47993 DB-793 add debug tracing to records_in_range to help debug query plan problems 2015-01-14 08:26:41 -05:00
Sergei Golubchik
5900333aa5 MDEV-7404 REPAIR multiple tables crash in MDL_ticket::has_stronger_or_equal_type
mysql_alter_table() that is used in mysql_recreate_table() doesn't expect
many tables in the TABLE_LIST.
2015-01-14 12:10:13 +01:00
Bala
e84b3fd4ff Updated file_contents test for sles packages 2015-01-14 11:41:28 +01:00
Venkatesh Duggirala
ebb2a3f5e1 Problem: IO thread fails to connect to master if servers are configured with
special character sets like utf16, utf32, ucs2.

Analysis: MySQL server does not support few special character sets like
  utf16,utf32 and ucs2 as "client's character set"(eg: utf16,utf32, ucs2).
  It is known limitation listed in the documentation
  http://dev.mysql.com/doc/refman/5.5/en/charset-connection.html.

  The default value for default-character-set parameter is 'auto'
  which means that if the server's character set is not supported,
  then server automatically changes client's character set to
  predefined character-set which is 'latin1' in the current code.

  Eg:
  $ ./mysql -uroot -S$SOCKET_FILE --default-character-set=utf16
  ERROR 1231 (42000): Variable 'character_set_client' can't be set to the value of 'utf16'

  $ ./mysql -uroot -S$SOCKET_FILE will be successfully connected to
  server with 'latin1' as default client side character set.

  When IO thread is trying to connect to Master, it sets server's character
  set as client's character set. When Slave server is started with these
  special character sets, IO thread (which is like a connection to Master)
  fails because of the above said limitation.

 Fix: Now even IO thread also behaves the same as a regular client behaves.
  i.e., If server's character set is not supported as client's character set,
  then set default's client character set(latin1) as client's character set.
2015-01-14 14:13:52 +05:30
Praveenkumar.Hulakund
23321f629b Bug#19786309 - CRASH IN UNLOCK TABLES AFTER LOCKING AND TRUNCATING TEMPORARY TABLE.
Attempt to truncate temporary table using Blackhole storage and
locked by LOCK TABLES caused assertion failure and crashes.

Blackhole is a transaction-aware engine. While creating the temporary
table in transaction-aware engine, temporary table of type
"TRANSACTIONAL_TMP_TABLE" is created. For such temporary tables
a THR_LOCK lock is acquired by the LOCK TABLE operation. References
to them are also added into MYSQL_LOCK::table[] array. Also for
Blackhole engine, flag HTON_CAN_RECREATE is set.

While truncating temporary tables, no locks are taken and
recreate_temporary_table() is called for engines having
"HTON_CAN_RECREATE" in flag.

Function closefrm() is called from the recreate_temporary_table(),
to close the current temporary table. In closefrm(), the lock on
table expected is "F_UNLCK". In debug builds, assert condition on
this fails when lock of type "F_WRLCK" is acquired by LOCK TABLE
operation on temporary tables using Blackhole engine.

In non-debug builds closefrm() simply freed TABLE object leaving
dangling pointer to this object in MYSQL_LOCK::table[] array which
might lead to crashes later.

Fix:
---------
To fix this issue, we now unlock and remove table from MYSQL_LOCK::table[]
array before calling close_temporary_table() in recreate_temporary_table().
This is achieved by calling mysql_lock_remove() function for this table.
2015-01-14 13:15:20 +05:30
Sergei Golubchik
f20598b27d TokuDB 7.5.4 2015-01-13 23:44:32 +01:00
Sergei Golubchik
e53b41a9ec cleanup 2015-01-13 19:28:03 +01:00
Sergei Golubchik
7f9f3139d7 MDEV-7333 "'show table status like 'table_name'" on tokudb table lead to MariaDB crash
adjust enum values when reading them from frm
2015-01-13 19:27:28 +01:00
Rich Prohaska
dc98e6eb90 Merge branch 'master' into releases/tokudb-7.5 2015-01-13 06:44:02 -05:00
Rich Prohaska
ba000b3db3 DB-791 remove memcache patch 2015-01-12 14:07:14 -05:00
Rich Prohaska
f9e59a0616 DB-790 remove the handle fatal signal mysql patch 2015-01-10 16:50:04 -05:00
Sergei Golubchik
2ab49689c6 MDEV-7410 Temporary table name conflict between sessions
workaround for missing SP auto-reparse.
allow the user to disable stored_program_cache_size, if he wants
2015-01-10 14:07:46 +01:00
Rich Prohaska
8ade1ba05b update the binlog group commit graphs for mariadb 10.0.15 2015-01-08 14:53:04 -05:00
Rich Prohaska
1c0cda222e Merge branch 'master' into releases/tokudb-7.5 2015-01-08 12:08:46 -05:00
Rich Prohaska
fa59b13a55 DB-781 check killed in tokudb get_next to terminate a big partition copy. should be done in partition storage engine, however 2015-01-07 19:02:26 -05:00
Bala
3ee8aa216d Updated the copyright year in the welcome message for MySQL 2015-01-06 21:23:21 +01:00
Kristian Nielsen
00649525ee MDEV-7189: main.processlist fails sporadically in buildbot
The test case tried to trigger a DEBUG_SYNC point at the end of a SELECT
SLEEP(5) statement. It did this by using EXECUTE 2, intending to trigger first
at the end of SET DEBUG_SYNC, and second at the end of the SELECT SLEEP(5).

However, in --ps-protocol mode, this does not work, because the SELECT is
executed in two steps (Prepare followed by Execute). Thus, the DEBUG_SYNC got
triggered too early, during the Prepare stage rather than Execute, and the
test case could race and information_schema.processlist see the thread in the
wrong state.

This patch fixes by changing the way the DEBUG_SYNC point is triggered. Now we
add a DBUG injection inside the code for SLEEP(5). This ensures that the
DEBUG_SYNC point is not activated until the SLEEP(5) is running, ensuring
that the following wait for completion will be effective.
2015-01-06 16:32:41 +01:00
Bala
d009d48d8c Raise version number after cloning 5.5.42 2015-01-05 11:13:50 +01:00
Rich Prohaska
7c240a1b99 Merge branch 'master' into releases/tokudb-7.5 2015-01-04 12:14:28 -05:00
Rich Prohaska
2a15820e1e Merge branch 'master' into releases/tokudb-7.5 2015-01-04 12:14:28 -05:00
Rich Prohaska
efb32d4644 DB-787 the tokudb_report_fractal_tree_info_for_db function can leak a db on an error path where db->open fails 2015-01-04 12:13:54 -05:00
Rich Prohaska
9cd31bc559 DB-787 the tokudb_report_fractal_tree_info_for_db function can leak a db on an error path where db->open fails 2015-01-04 12:13:54 -05:00
Rich Prohaska
5ed812ec30 Merge branch 'master' into releases/tokudb-7.5 2015-01-02 09:53:55 -05:00
Rich Prohaska
2cbb150db0 Merge branch 'master' into releases/tokudb-7.5 2015-01-02 09:53:55 -05:00
Rich Prohaska
78bc6e37ad DB-785 turn off fsync on mariadb for 2PC transactions 2015-01-02 09:53:30 -05:00
Rich Prohaska
7229b9f5f8 DB-785 turn off fsync on mariadb for 2PC transactions 2015-01-02 09:53:30 -05:00
Rich Prohaska
906c8b2794 DB-785 add a txn api to check if a txn is prepared 2015-01-02 09:50:51 -05:00
Rich Prohaska
068416d302 DB-785 add a txn api to check if a txn is prepared 2015-01-02 09:50:51 -05:00
Harin Vadodaria
fe4c4ab914 Bug#19820550 : DISABLE SSL 3.0 SUPPORT IN OPENSSL
Explicitly disable weaker SSL protocols.
2015-01-02 10:18:04 +05:30
Harin Vadodaria
3ce85548bd Bug#20201864 : UPGRADE TO YASSL 2.3.7
Upgrading YaSSL from 2.3.5 to 2.3.7

Reviewed-by : Kristofer Pettersson <kristofer.pettersson@oracle.com>
Reviewed-by : Vamsikrishna Bhagi <vamsikrishna.bhagi@oracle.com>
2014-12-30 16:15:03 +05:30
s.sujatha
5da083ef67 Bug#20041860: SLAVE ERROR WHEN DROP DATABASE
Fix:
===
Backport Bug#11756194 to mysql-5.5. slave breaks if
'drop database' fails on master and mismatched tables on
slave.

'DROP TABLE <deleted tables>' was binlogged when
'DROP DATABASE' failed and at least one table was deleted
from the database. The log event would lead slave SQL thread
stop if some of the tables did not exist on slave.

After this patch, It is always binlogged with 'IF EXISTS'
option.
2014-12-29 12:17:55 +05:30
Rich Prohaska
4197cc130b Merge branch 'master' into releases/tokudb-7.5 2014-12-28 11:38:14 -05:00
Rich Prohaska
9ca5e1069a Merge branch 'master' into releases/tokudb-7.5 2014-12-28 11:38:14 -05:00
Jan Lindström
5fafc3ce42 MDEV-7369: MariaDB build fails when XTRADB_STORAGE_ENGINE enabled
Patch by James Taylor.
2014-12-28 13:24:53 +02:00
Thiru
901ce5314b Bug #20144839 AFTER UPDATING TO MYSQL 5.6.22 SERVER
CRASHES ON EVERY START ATTEMPT

Description:
------------
push_warning_printf function is used to print the warning message
to the client. So this function should not invoke while recovering
the server. Moreover current_thd is NULL while starting the server.

Solution:
---------
 - Avoiding the warning to be printed while recovery.
This patch already pushed in mysql-5.6.
2014-12-24 15:22:10 +05:30