Commit graph

81 commits

Author SHA1 Message Date
bell@sanja.is.com.ua
acbca25dd2 postreview fix 2004-12-07 21:18:15 +02:00
bell@sanja.is.com.ua
f5e253dc2f reporting empty result added in case of max/min optimisation of ALL/ANY/SOME subqueries
fixed null processing in NOT operation used in ALL subquery (Bug #6247)
2004-11-18 18:10:07 +02:00
bell@sanja.is.com.ua
3ae044c24f removed incorrect error message about aggregate functions
improved mechanisn of detection posibility to be NULL for single row queries
switched off substitution optimisation for single row subqueries in PS due to problem in resolving substituted expressions
(changes to make subselects test working with PS protocol)
2004-10-27 21:11:06 +03:00
bell@sanja.is.com.ua
3ca433e332 merge 2004-08-23 15:50:59 +03:00
konstantin@mysql.com
568c6e8526 Fix for bug#4912 "mysqld crashs in case a statement is executed
a second time". The bug was caused by incompatibility of
negations elimination algorithm and PS: during first statement 
execute a subtree with negation was replaced with equivalent 
subtree without NOTs.
The problem was that although this transformation was permanent, 
items of the new subtree were created in execute-local memory.
The patch adds means to check if it is the first execute of a
prepared statement, and if this is the case, to allocate items
in memory of the prepared statement.
The implementation:
- backports Item_arena from 5.0
- adds Item_arena::is_stmt_prepare(), 
  Item_arena::is_first_stmt_execute().
- deletes THD::allocate_temporary_pool_for_ps_preparing(),
  THD::free_temporary_pool_for_ps_preparing(); they
  were redundant.
and adds a few invariants:
- thd->free_list never contains junk (= freed items)
- thd->current_arena is never null. If there is no
  prepared statement, it points at the thd. 
The rest of the patch contains mainly mechanical changes and
cleanups.
2004-08-21 02:02:46 +04:00
bell@sanja.is.com.ua
0ce931947e skip resolving field in table list if table list is not accessable due to groupping (BUG#4814) 2004-08-13 10:01:30 +03:00
bell@sanja.is.com.ua
130740248b aggregate functions check during substitution made only for single row subselects (BUG#4400)
restoring current senect pointer before PS rexecution (backport from 5.0)
removed spaces at  lines ends
2004-07-04 08:46:28 +03:00
bell@sanja.is.com.ua
d2fa79b291 keep old engine & JOIN if we changed subquery Item (Bug #3646) 2004-05-07 23:06:11 +03:00
pem@mysql.comhem.se
d02d105916 Fixed (portability) bug in handler.h, and tried to silence cast warnings on some platforms. 2004-05-06 19:55:12 +02:00
hf@deer.(none)
18d722ff93 Merging 2004-03-04 17:52:06 +04:00
bell@sanja.is.com.ua
69e2460bd4 fixed subquery with PS (BUG#2462)
fixed UNION preparation
2004-02-08 20:14:13 +02:00
hf@deer.(none)
bfe134b86f Fix for prepared statements
Here i added Item_*::cleanup() functions,
removed a lot of ~Item_*'s,
added code to restore order_list and group_list
2003-12-30 14:08:19 +04:00
hf@deer.(none)
dff5b0a75b Fix for #1992
This bug happens when a query, having subselects in the fields list,
needs temporary table.
Item_subselect::get_tmp_table_item isn't implemented and just returns
*this. So the tmp_table_item takes value not from temporary but
from original table.
2003-12-06 23:37:24 +04:00
monty@mysql.com
ede8169d24 Added missing SSL library (Should be in source distribution)
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log
2003-11-28 12:18:13 +02:00
bell@sanja.is.com.ua
cb19ad9ac1 fixed using 'uncachable' tag and RAND_TABLE_BIT setting 2003-11-17 20:53:40 +02:00
bell@sanja.is.com.ua
c56e75e2c1 after review fix 2003-11-03 12:28:36 +02:00
bell@sanja.is.com.ua
e025adb403 Merge 2003-11-03 08:47:27 +02:00
bell@sanja.is.com.ua
777316c3e1 fixed BUG#1645
all calls of fix_fields() are inspected
(copy of cset which I lost in accidatly tree delete)
2003-11-02 17:27:35 +02:00
bell@sanja.is.com.ua
ae380c5855 merge 2003-10-28 12:45:37 +02:00
bell@sanja.is.com.ua
2efab5b67d fixed ALL/ANY optimisation with union (BUG#1668)
code cleanup
2003-10-27 01:01:27 +02:00
bell@sanja.is.com.ua
b9dccb34dd fixed support of used_tables() and const_item() in subqueries
(BUG#1444)
2003-10-17 00:36:01 +03:00
bell@sanja.is.com.ua
a7bdd19707 subqueries made printable
new EXPLAIN parameter to show real query as it was interpreted
(SCRUM) (WL#1274)
2003-10-16 15:54:47 +03:00
bell@laptop.sanja.is.com.ua
7921834334 Merge laptop.sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-constructors-4.1
2003-10-07 17:42:59 +03:00
bell@laptop.sanja.is.com.ua
e99441b045 after merge fix 2003-10-07 17:37:20 +03:00
bell@laptop.sanja.is.com.ua
efae22f617 merge 2003-10-07 16:22:48 +03:00
bell@laptop.sanja.is.com.ua
09c139ac37 after merge fix 2003-10-07 13:31:44 +03:00
monty@narttu.mysql.fi
b31a79df3e merge 2003-10-07 11:24:38 +03:00
bell@laptop.sanja.is.com.ua
d5a7a6ec34 merge 2003-10-07 08:51:09 +03:00
bell@laptop.sanja.is.com.ua
dfb7ca08dc merge 2003-10-07 07:51:14 +03:00
bell@laptop.sanja.is.com.ua
e1b53fdd42 Merge 2003-10-06 20:55:06 +03:00
bell@laptop.sanja.is.com.ua
9db4024b8d thd pointer storing moved to fix_fields() (WL#1254) (SCRUM) 2003-10-02 22:19:41 +03:00
monty@narttu.mysql.fi
6905d7963e Don't print warnings about 'setrlimit' if --warnings is not given
Code review/cleanup of sub subselect_uniquesubquery_engine
2003-09-29 12:39:38 +03:00
bell@laptop.sanja.is.com.ua
ddd019cc79 code cleanup: removed unused constructors and methods 2003-09-20 18:31:56 +03:00
bell@sanja.is.com.ua
46b8c3ea8b renamed join_types (as was suggested by Peter Gulutzan) 2003-09-14 09:40:57 +03:00
bell@laptop.sanja.is.com.ua
ec8d6d05de enum renamed (asked for compilation under windows) 2003-08-28 13:21:30 +03:00
bell@laptop.sanja.is.com.ua
f77f46d8eb Merge laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-all_any-4.1
into laptop.sanja.is.com.ua:/home/bell/mysql/bk/work-all_any_group-4.1
2003-08-23 13:33:02 +03:00
bell@laptop.sanja.is.com.ua
5553868638 fixed bug of lack of fix_fields call (after merge bugfix (SCRUM))
fixed bug in Item_sum
fixed bug in dependence remover
after merge fix
2003-08-23 13:29:38 +03:00
bell@laptop.sanja.is.com.ua
c514948a30 merge 2003-08-20 22:17:57 +03:00
bell@laptop.sanja.is.com.ua
55094f903f As far as now transformer called after setup_wild() it is impossible to have '*' 2003-08-16 02:04:29 +03:00
bell@sanja.is.com.ua
6ac8e9b93c optimisation of independent ALL/ANY with aggregate function (WL#1115) (SCRUM) 2003-08-12 12:38:03 +03:00
bell@sanja.is.com.ua
cbb3a78d8d merge 2003-08-11 12:00:33 +03:00
bell@sanja.is.com.ua
de705e53f2 fixed bug in used_tables() report of left expression of IN subquery
fixed number of rows of external field reported to optimizer
added check of choosen key (checked left expression tag)
(SCRUM fix for simple IN optimisation)
2003-08-07 11:16:02 +03:00
bell@sanja.is.com.ua
ec74bb8d76 independent ALL/ANY subselect on top of WHERE clause (subselect without GROUP BY or aggregate functions) optimisation
(SCRUM) (WL#1086)
2003-07-24 15:26:21 +03:00
bell@sanja.is.com.ua
7e34954b5e new optimisation for ref_null (SCRUM) (WL#818) 2003-07-17 19:39:31 +03:00
bell@sanja.is.com.ua
8279740af4 new IN subquery engine added for simple IN with non-primary index but without NULL returning
(SCRUM) (part of WL#818)
2003-07-08 00:08:00 +03:00
bell@sanja.is.com.ua
6348e63f62 Optimisation if simple IN subselect with primary index
(SCRUM) (part of WL#818)
2003-07-07 18:40:19 +03:00
bell@sanja.is.com.ua
5eaaf8e732 after review changes (SCRUM)
removed outer resolving flag (because of movingtransformation after fix_fields)
2003-07-02 01:45:22 +03:00
bell@sanja.is.com.ua
7b77c5a2d3 merged 2003-06-25 23:52:15 +03:00
bell@sanja.is.com.ua
fe6175c40d added mem_root switching for subselect if it is necessary
(bug #518 fixed)
2003-05-28 16:52:56 +03:00
bell@sanja.is.com.ua
1915632163 subselect transformation moved in after-fix_field place
removed "of is null" if it is possible
  (this cset should be SCRUM related, but not approved as scrum task yet)
2003-05-14 21:51:33 +03:00