Commit graph

84468 commits

Author SHA1 Message Date
Sergei Golubchik
86bc6b6ae8 tokudb: CLUSTERING=YES syntax for indexes 2013-09-09 13:34:50 +02:00
Sergei Golubchik
f2b5f1fdc6 tokudb: auto-increment not on the first keypart 2013-09-09 13:34:38 +02:00
Sergei Golubchik
36a22c1447 tokudb: extended keys support 2013-09-09 13:34:28 +02:00
Sergei Golubchik
5bc410e022 workaround for partitioning bug MDEV-4466 (fixed in 10.0) 2013-09-09 13:34:17 +02:00
Sergei Golubchik
c8a5da9676 tokudb: configure features, available in mariadb 5.5 2013-09-09 13:34:06 +02:00
Sergei Golubchik
905c9815f7 merge with git://github.com/Tokutek/ft-index.git up to tokudb-7.0.4 2013-09-09 11:32:39 +02:00
Sergei Golubchik
9b933e3be9 merge with git://github.com/Tokutek/ft-engine.git up to tokudb-7.0.4 2013-09-09 11:12:52 +02:00
Sergei Golubchik
6755944d08 remove PBXT 2013-08-30 11:25:49 +02:00
Sergei Golubchik
cd92bc38a7 start using jemalloc 2013-08-30 10:56:26 +02:00
Sergei Golubchik
253366e776 merge in git://github.com/Tokutek/jemalloc 2013-08-29 16:17:44 +02:00
Sergei Golubchik
28a9fea122 fix an old bug where dd_frm_type() could incorrectly determine the table type
for dynamic engines (because it only looked at the one-byte code, not at the full
engine name).
2013-08-28 22:16:13 +02:00
Sergei Golubchik
68325b6a12 Test case for MyISAM and OPTIMIZE TABLE
that requires MDL_SHARED_NO_READ_WRITE.
2013-08-28 22:16:03 +02:00
Sergei Golubchik
214c43ba96 bugfix: storage engine might return a negative error code, but it shouldn't
be ignored on return
2013-08-26 21:14:34 +04:00
Sergei Golubchik
38e2340a8e mtr bug: files outside of both the suite dir and the overlay dir, were
treated as coming from the overlay.
2013-08-26 21:14:01 +04:00
Sergei Golubchik
a73972bfea don't decide on extended keys by DB_TYPE_INNODB, use hton->flags 2013-08-26 21:13:17 +04:00
Sergei Golubchik
6140393af0 HA_ERR_TABLE_DEF_CHANGED is normal situation, not an server-wide exception,
don't log it to the error log.
2013-08-26 21:04:10 +04:00
Sergei Golubchik
de04890588 typo fixed (boolean index attributes didn't work) 2013-08-26 21:03:01 +04:00
Sergei Golubchik
d126993404 MDEV-4951 drop user leaves privileges
It's safe to delete from HASH when traversing it *backwards*, but not *forwards*.
2013-08-28 07:49:53 +02:00
Igor Babaev
1906f1388e Fixed bug mdev-4959.
The fix for mdev-4420 was not quite correct. This patch corrects it.
2013-08-28 09:14:57 -07:00
Igor Babaev
34aa69564d Merge 5.3->5.5 2013-08-27 22:19:14 -07:00
Michael Widenius
112411b056 Fixed MySQL bug #69861 LAST_INSERT_ID is replicated incorrectly if replication filters are used
mysql-test/suite/rpl/r/last_insert_id.result:
  Test case for last_insert_id
mysql-test/suite/rpl/t/last_insert_id.cnf:
  Test case for last_insert_id
mysql-test/suite/rpl/t/last_insert_id.test:
  Test case for last_insert_id
sql/log_event.cc:
  Added DBUG_PRINT
  Set thd->first_successful_insert_id_in_prev_stmt_for_binlog when setting thd->first_successful_insert_id_in_prev_stmt.
  This is required to get last_insert_id() replicated.
  This is analog to how read_first_successful_insert_id_in_prev_stmt() works.
sql/rpl_utility.cc:
  Added DBUG_PRINT
2013-08-27 19:18:04 +03:00
Igor Babaev
650d3266bb Fixed bug mdev-4952
When in function remove_eq_conds() a sub-formula of the processed condition
is replaced for another formula we should ensure that in the resulting
formula AND/OR levels must alternate.
2013-08-26 15:51:47 -07:00
Igor Babaev
901737c978 Fixed bug mdev-4944.
The patch to fix mdev-4418 turned out to be incorrect.
At the substitution of single row tables in make_join_statistics()
the used multiple equalities may change and references to the new multiple
equalities must be updated. The function remove_eq_conds() takes care of it and
it should be called right after the substitution of single row tables.
Calling it after the call of make_join_statistics was a mistake.
2013-08-26 12:55:58 -07:00
Sergey Petrunya
7907b9b4da Merge fix for MDEV-4942, 5.3->5.5 2013-08-26 16:23:14 +04:00
Igor Babaev
dbc84ff96c Fixed bug mdev-4942.
Made sure that degenerate conjunctions/disjunctions are obtained from
AND/OR conditions.
2013-08-23 22:17:02 -07:00
Igor Babaev
b9ce8e608f Merge 2013-08-23 08:34:35 -07:00
Igor Babaev
540eeebbb0 Fixed bug mdev-4420.
The code of JOIN::optimize that performed substitutions for the best equal
field in all ref items did not take into account that a multiple equality
could contain the result of the single-value subquery if the subquery is
inexpensive. This code was corrected.
Also made necessary corresponding corrections in the code of make_join_select().
2013-08-23 07:25:45 -07:00
Alexander Barkov
d1adae3707 Merging from 5.3
pending merges:
  Alexander Barkov 2013-08-22 MDEV-4804 Date comparing false result
2013-08-22 16:23:54 +04:00
Alexander Barkov
c40de1df36 MDEV-4804 Date comparing false result 2013-08-22 15:20:27 +04:00
Sergey Petrunya
f5ea23b6e2 Automatic merge 2013-08-22 14:13:46 +04:00
Sergey Petrunya
37e9714c5e MDEV-4840: Wrong result (missing rows) on LEFT JOIN with InnoDB tables
Fix two problems in table elimination code:
- Before marking a "value" as bound, check if it is already bound. Marking the 
  same value as bound twice could confuse a module that depends on this value, 
  because Dep_module_XXX use counters to know when they become bound.

- When checking whether field is part of a key, ignore "extended keys" property.
2013-08-22 14:12:10 +04:00
Igor Babaev
2ead54d0fb Merge 2013-08-21 12:34:58 -07:00
Igor Babaev
5d5f3a1ee8 Merge 5.3->5.5 2013-08-21 11:27:02 -07:00
unknown
f8af4423b4 MDEV-4908: Assertion `((Item_cond *) cond)->functype() == ((Item_cond *) new_item)->functype()' fails on a query with IN and equal conditions, AND/OR, materialization+semijoin
A new AND Item should be prepared (fix_field() call) before using.
2013-08-21 17:42:09 +03:00
Igor Babaev
99992f6ec4 Fixed a bug/typo in the patch for mdev-4355, noticed after the patch
had been merged into 5.5.

Corrected the result of the output from the test case for mdev 4895.
2013-08-20 13:47:13 -07:00
unknown
5fdb531d77 Fix bug MDEV-4895 Valgrind warnings (Conditional jump or move depends on uninitialised value) in Field_datetime::get_date on GREATEST(..) IS NULL
Analysis:
The cause of the valgrind warning was an attempt to evaluate a Field that was not yet read.
The reason was that on one hand Item_func_isnotnull was marked as constant by
Item_func_isnotnull::update_used_tables, and this allowed eval_const_cond() to be called.
On the other hand Item_func_isnotnull::val_int() evaluated its argument as if it was not
constant.

Solution:
The fix make sure that Item_func_isnotnull::val_int() doesn't evaluate its argument when
it is constant and cannot be NULL, because the result is known in this case.
2013-08-20 17:08:03 +03:00
Jan Lindström
c97ae6b56f MDEV-4923 Incorrect merge on XtraDB os0file.c. Function os_file_set_atomic_writes returns TRUE when successfull and FALSE at failure. 2013-08-20 16:05:34 +03:00
unknown
84a2fb4836 Backport from 10.0-base fix for tests failing when vardir has no execute permissions. 2013-08-20 10:42:38 +02:00
Igor Babaev
008371b627 Backported from maria-5.5 the fix in the patch for mdev-4418 that
had been discovered when merging the patch from 5.3 into 5.5.
2013-08-19 14:24:48 -07:00
Igor Babaev
e1095c1a22 Merge 2013-08-19 08:55:49 -07:00
Igor Babaev
b4e994d77b Merge 2013-08-18 22:13:49 -07:00
Igor Babaev
4eddb2c221 Merge 5.3->5.5.
In particular:
Merged the patch for bug mdev-4418 from 5.3 into 5.5.
Fixed a bug in the patch that should be backported to 5.3.
2013-08-18 19:58:51 -07:00
Sergei Golubchik
c06eaf21b7 MDEV-4165 [PATCH] RFE: make tmpdir a build-time configurable option
support -DTMPDIR=/path in CMakeLists.txt

Patch by Honza Horak.
2013-08-17 17:20:09 +04:00
Igor Babaev
25c152018d Fixed bug mdev-4418.
After single row substitutions there might appear new equalities.
They should be properly propagated to all AND/OR levels the WHERE
condition. It's done now with an additional call of remove_eq_conds().
2013-08-16 22:01:47 -07:00
Igor Babaev
752d5d022d Merge 2013-08-15 16:59:20 -07:00
Igor Babaev
fa7f677218 Fixed bug mdev-4355.
This patch almost totally revised the patch for bug mdev-4177.
The latter had too many defects. In particular, it did not
propagate multiple equalities formed when merging a degenerate
disjunct into underlying AND formula.
2013-08-15 14:16:16 -07:00
Igor Babaev
960720b10d Merge 5.2->5.3 2013-08-15 14:04:20 -07:00
Igor Babaev
7ba78277b4 Merge 5.1->5.2 2013-08-14 20:37:38 -07:00
Sergei Golubchik
758b012ff2 fix a comment 2013-08-14 11:12:57 +02:00
Igor Babaev
6dd9f049ab Fixed bug mdev-4894.
This a an old legacy performance bug.
When a very selective range scan existed for the second table in a join,
and, at the same time, there was another range condition depending on the
fields of the first table, the optimizer chose a plan with
'Range checked for each record'. This plan was extremely inefficient in
comparison with the regular selective range scan.
As a matter of fact the range scan chosen for each record was the same as
that selective range scan. 

Changed the test case for bug 24776 to preserve the old output for explain.
2013-08-13 15:21:11 -07:00