1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-10 02:01:19 +03:00

34399 Commits

Author SHA1 Message Date
Alexander Barkov
c5004e399e MDEV-5445 Server crashes in Item_func_like::fix_fields on LIKE ExtractValue(..)
Fixed.
2013-12-17 01:38:44 +04:00
Sergei Golubchik
ce2fabe442 move oqgraph and sphinx suites into storage/*/mysql-test/ 2013-12-16 13:32:03 +01:00
Sergei Golubchik
c1a6522875 merge 2013-12-16 13:28:35 +01:00
Sergei Golubchik
d28d3ba40d 10.0-base merge 2013-12-16 13:02:21 +01:00
Sergey Vojtovich
4541c4d3fb MDEV-5319 - Request for merge of Oqgraph v3 functionality
storage/oqgraph into 10.0

- fixed sys_vars.all_vars (added oqgraph_allow_create_integer_latch_basic.test)
- since oqgraph depends on Judy, move it to a separate package
2013-12-16 13:55:43 +04:00
Sergey Vojtovich
cd342e78b8 MDEV-4748 - metadata_lock_info plugin
- restore find_ticket() private status, declare friend function instead
- added metadata_lock_info to DEFAULT_SUITES
2013-12-16 12:26:20 +04:00
Sergei Golubchik
6bf10fac44 5.5 merge 2013-12-15 15:57:26 +01:00
Igor Babaev
8efaff4959 Fixed bug mdev-5415.
Do not calculate selectivity of conditions for the tables of the information schema.
2013-12-14 19:13:37 -08:00
Kent Boortz
afd24eb63d Bug#29716 : Bug#11746921 : MYSQL_INSTALL_DB REFERS TO THE (OBSOLETE) MYSQLBUG SCRIPT DURING INSTALLATION
Bug#68742 : Bug#16530527 : OBSOLETE BUGREPORT ADDRESSES
2013-12-14 13:05:36 +01:00
unknown
dbfe5f4774 MDEV-5363: Make parallel replication waits killable
Add a test case for killing a waiting query in parallel replication.

Fix several bugs found:

 - We should not wakeup_subsequent_commits() in ha_rollback_trans(), since we
   do not know the right wakeup_error() to give.

 - When a wait_for_prior_commit() is killed, we must unregister from the
   waitee so we do not race and get an extra (non-kill) wakeup.

 - We need to deal with error propagation correctly in queue_for_group_commit
   when one thread is killed.

 - Fix one locking issue in queue_for_group_commit(), we could unlock the
   waitee lock too early and this end up processing wakeup() with insufficient
   locking.

 - Fix Xid_log_event::do_apply_event; if commit fails it must not update the
   in-memory @@gtid_slave_pos state.

 - Fix and cleanup some things in the rpl_parallel.cc error handling.

 - Add a missing check for killed in the slave sql driver thread, to avoid a
   race.
2013-12-13 14:26:51 +01:00
Sergei Golubchik
ff485d2dc4 MDEV-5438 A view can mask a table that supports discovery 2013-12-13 14:26:10 +01:00
Alexander Barkov
0c0fe7a862 Fixing temporarily test failures in ctype_xxx.
The problem reported as MDEV-5444.
2013-12-13 17:18:10 +04:00
Sergei Golubchik
e68bccc743 5.3 merge 2013-12-13 13:00:38 +01:00
Sergey Vojtovich
258bf32d3c MDEV-4748 - metadata_lock_info plugin
- include metadata_lock_info plugin into debian packages
- ignore metadata_lock_info plugin in mysqld--help test
- let test suite run with built-in metadata_lock_info plugin
2013-12-13 12:42:45 +04:00
Igor Babaev
3ec4296ec4 Fixed bug mdev-5410.
The fix for bug #27937 was incomplete: it did not handle correctly the queries
containing UNION with global ORDER BY in subselects.
2013-12-12 13:55:33 -08:00
sayantan dutta
2dc95d5940 Bug #17827378 - MTR DOES NOT REPORT IF A TEST FAILS TO DROP CREATED EVENTS 2013-12-12 12:20:57 +05:30
Sergei Golubchik
47ee721923 MDEV-4403 Attempting to use cassandra storage engine causes "service 'my_snprintf_service' interface version mismatch"
When a DSO is loaded we rewrite service pointers to point to the actual service structures.
But when a DSO is unloaded, we have to restore their original values, in case this DSO
wasn't removed from memory on dlclose() and is later loaded again.
2013-12-09 12:39:13 +01:00
Sergei Golubchik
6ae5f0efea MDEV-5115 RBR from MySQL 5.6 to MariaDB 10.0 does not work
Patially merge WL#5917, to understand v2 row events
2013-12-09 12:37:45 +01:00
Igor Babaev
21d0d8c5bf Merge 2013-12-05 12:40:04 -08:00
Igor Babaev
ccf5871d7b Fixed bug mdev-5382
When marking used columns the function find_field_in_table_ref() erroneously
called the walk method for the real item behind a view/derived table field
with the second parameter set to TRUE.
This erroneous code was introduced in 2006.
2013-12-05 11:13:20 -08:00
unknown
b78f721460 MDEV-5353: server crash on subselect if WHERE applied to some result field
Correct processing of view/derived with no tables added.
2013-12-04 16:54:33 +02:00
Guilhem Bichot
c90cdf5d49 Bug#16539979 - BASIC SELECT COUNT(DISTINCT ID) IS BROKEN
Bug#17867117 - ERROR RESULT WHEN "COUNT + DISTINCT + CASE WHEN" NEED MERGE_WALK 

Problem:
COUNT DISTINCT gives incorrect result when it uses a Unique
Tree and its last inserted record has null value.

Here is how COUNT DISTINCT is processed, given that this query is not
using loose index scan.

When a row is produced as a result of joining tables (there is only
one table here), we store the SELECTed value in a Unique tree. This
allows elimination of any duplicates, and thus implements DISTINCT.

When we have processed all rows like this, we walk the Unique tree,
counting its elements, in Aggregator_distinct::endup() (tree->walk());
for each element we call Item_sum_count::add(). Such function wants to
ignore any NULL value, for that it checks item_sum -> args[0] ->
null_value. It is a mistake: when walking the Unique tree, the value
to be aggregated is not item_sum ->args[0] but rather table ->
field[0].

Solution:
instead of item_sum -> args[0] -> null_value, use arg_is_null(), which
knows where to look (like in fix for bug 57932).

As a consequence of this solution, we have to make arg_is_null() a
little more general:
1) Because it was so far only used for AVG() (which always has a
single argument), this function was looking at a single argument; now
that it has to work with COUNT(DISTINCT expression1,expression2), it
must look at all arguments.
2) Because we start using arg_is_null () for COUNT(DISTINCT), i.e. in
Item_sum_count::add (), it implies that we are also using it for
COUNT(no DISTINCT) (same add ()). For COUNT(no DISTINCT), the
nullness to check is that of item_sum -> args[0]. But the null_value
of such item is reliable only if val_*() has been called on it. So far
arg_is_null() was always used after a call to arg_val*(), so could
rely on null_value; but for COUNT, there is no call to arg_val*(), so
arg_is_null() has to call is_null() instead.

Testcase for 16539979 by Neeraj. Testcase for 17867117 contributed by
Xiaobin Lin from Taobao.
2013-12-04 12:32:42 +01:00
Sergei Golubchik
a3b99778fc 5.2 merge 2013-12-02 12:32:43 +01:00
Alexander Barkov
b97b9536c7 MDEV-4857 Wrong result of HOUR('1 00:00:00')
modified:
  mysql-test/r/func_time.result
  mysql-test/t/func_time.test
  sql-common/my_time.c
  sql/item_func.h
  sql/item_timefunc.cc
  sql/mysql_priv.h
  sql/time.cc
2013-12-02 15:09:34 +04:00
Sergei Golubchik
7e431dc379 5.1 merge 2013-12-01 20:12:19 +01:00
Sergei Golubchik
f534708bd6 MDEV-5266 MySQL:57657 - Temporary MERGE table with temporary underlying is broken by ALTER
Fix ha_myisammrg::update_create_info() to do what ha_myisammrg::append_create_info() does -
take sub-table names from TABLE_LIST, not reverse engineer tablefile names.

Backport praveenkumar.hulakund@oracle.com-20120127081643-u7dxy23i8yyqarm7 from mysql-5.6
2013-11-29 20:21:05 +01:00
Alexander Barkov
c23b36510e Fixing mysql_tzinfo_to_sql_symlink.result that was
inintentionally broken during merge 5.5->10.0-base

modified:
  mysql-test/r/mysql_tzinfo_to_sql_symlink.result
2013-11-29 15:44:22 +04:00
Pavan Naik
1c0122c5c1 BUG#16321920 : CREATE A SEPARATE INNODB_ZIP TEST SUITE
Fix :
-------	

Created separate suites called innodb_zip ans i_innodb_zip that contain all compression tests.

Running the new suites with following compression-related parameters :

* innodb_compression_level = {1/9}
* innodb_log_compressed_pages = {ON/OFF}
2013-11-29 15:13:47 +05:30
Sergei Golubchik
38c91c067b MDEV-4955 discover of table non-existance on CREATE
when frm file exists, but the table does not.

In recover_from_failed_open(), allow the discovery
to fail without an error, when
open_strategy == TABLE_LIST::OPEN_IF_EXISTS.
2013-11-28 16:39:17 +01:00
Sergei Golubchik
1387e71531 MDEV-5281 Partitioning issue after upgrade from 10.0.3-1 to 10.0.5-1
merged from 5.6:
Bug#14521864: MYSQL 5.1 TO 5.5 BUGS PARTITIONING
Bug#16589511: MYSQL_UPGRADE FAILS TO WRITE OUT ENTIRE ALTER TABLE ... ALGORITHM= ... STATEMENT
Bug#16274455: CAN NOT ACESS PARTITIONED TABLES WHEN DOWNGRADED FROM 5.6.11 TO 5.6.10

plus minor changes from 5.6, mainly comments
2013-11-28 12:10:44 +01:00
Sergei Golubchik
44db9c41b3 typo fix in ha_partition::rnd_pos(), status wasn't updated 2013-11-27 22:30:59 +01:00
Sergei Golubchik
b16e67fd9c install and package plugin suites. 2013-11-27 21:58:47 +01:00
Sergei Golubchik
c2839e2cf2 mysql-test: allow suite.pm add its suite to the default list.
run tokudb suites by default.
mark big and slow tests tokudb.change_column_all_1000_1 and
tokudb.change_column_all_1000_10 test as --big
2013-11-27 21:58:36 +01:00
Igor Babaev
96f8058a7c Fixed bug mdev-5204.
Always use the value of table::file->stats.records when checking
whether a table with HA_STATS_RECORDS_IS_EXACT flag contains not
more than 1 record.
2013-11-27 09:06:34 -08:00
Sergey Petrunya
928543ca6c MDEV-5344: LEFT OUTER JOIN table data is lost in ON DUPLICATE KEY UPDATE section
- For INSERT ... SELECT ... ON DUPLICATE KEY UPDATE, table elimination should 
  check which tables are referenced in the ON DUPLICATE KEY UPDATE clause.
2013-11-27 17:43:16 +04:00
Igor Babaev
acc539a2c4 Added the test case for bug mdev-5200.
The bug was fixed by the patch applied to the 5.3 tree in the revision 3727.
2013-11-26 15:04:21 -08:00
unknown
7a1f31866c MDEV-4946: IO thread should expose its current GTID position
Add another column to SHOW SLAVE STATUS, and adjust test suite
to cope.
2013-11-25 15:21:25 +01:00
Sergei Golubchik
c6d30805db 5.5 merge 2013-11-23 00:50:54 +01:00
Alexander Barkov
09c6638b87 A clean-up for the previous commit (mtr mysql_tzinfo_to_sql_symlink) 2013-11-22 12:20:29 +04:00
Alexander Barkov
a082ea78c2 "mtr mysql_tzinfo_to_sql_symlink" failed in out-of-source builds with this error:
mysql-test-run: *** ERROR: Could not find any of
/mariadb-5.5.34/sql/mysql_tzinfo_to_sql
/mariadb-5.5.34/build/client/mysql_tzinfo_to_sql
Fixed the directory list to search mysql_tzinfo_to_sql binary in.
2013-11-22 11:52:19 +04:00
Igor Babaev
d34e46795e Merge 5.3->5.5 2013-11-21 21:40:43 -08:00
Igor Babaev
8224d95524 Merge 2013-11-21 18:28:20 -08:00
Igor Babaev
c0f31dc9f3 Another attempt to fix bug mdev-5103.
The earlier pushed fix for the bug was incomplete. It did not remove
the main cause of the problem: the function remove_eq_conds()
removed always true multiple equalities from any conjunct, but did not
adjust the list of them stored in Item_cond_and::cond_equal.current_level.

Simplified the test case for the bug and moved it to another test file.

The fix triggered changes in EXPLAIN EXTENDED for some queries.
2013-11-21 15:19:25 -08:00
Sergei Golubchik
f5ba8397e2 unreserve GET keyword 2013-11-21 14:25:28 +01:00
Alexander Barkov
1345a75922 MroongaSE: addint thd_autoinc and thd_error_context plugin services 2013-12-12 19:18:49 +04:00
Alexander Barkov
67f514382b MDEV-5431 Test main.ctype_latin2 fails in buildbot
Fixing include/ctype_datetime.inc not to depend on the current time zone.
2013-12-11 16:37:53 +04:00
Sergey Vojtovich
af2129f952 MDEV-5319 - Request for merge of Oqgraph v3 functionality storage/oqgraph
into 10.0
2013-12-11 13:02:12 +04:00
Alexander Barkov
03f6778d61 MDEV-5298 Illegal mix of collations on timestamp
Fixed.
2013-12-10 13:34:59 +04:00
Alexander Barkov
1f4f425a20 MDEV-5297 TIME(0), TIMESTAMP(0) and DATETIME(0) are self-incompatible during replication (upstream)
Fixed.
2013-12-06 19:02:55 +04:00
Alexander Barkov
d240a0418c Merge 10.0-connect -> 10.0 2013-12-03 14:12:53 +04:00