Commit graph

187 commits

Author SHA1 Message Date
konstantin@mysql.com
e107778119 Comments to the single-select optimization algorithm. 2004-10-04 18:58:06 +04:00
bell@sanja.is.com.ua
f11bcefae1 fixed error handling if creating derived table failed
single row subquery always can return NULL (no rows found) (BUG#5590)
2004-09-17 19:08:46 +03:00
bell@sanja.is.com.ua
5d42c492d6 fixed temporary table processing expresions of subqueries and removed wrong restrictions of field resolving (BUG#5326) 2004-09-06 13:00:24 +03:00
bell@sanja.is.com.ua
6fcd27e9cd after review fixes:
allowed parsing of table fields inside aggregate functions
 added new tests of fields resolving in grouping
2004-08-23 22:31:01 +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
d7ae5de89b in case of compound index fill all parts in optimized IN (BUG#4435) 2004-08-12 17:31:23 +03:00
bell@sanja.is.com.ua
5eadafe569 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-subs-4.1
2004-07-17 02:13:02 +03:00
bell@sanja.is.com.ua
3609ab683e stack overflow check added for subqueries processing (BUG#4554) 2004-07-14 23:57:14 +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
d3efbb9d3b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-innodb-4.1
2004-06-24 10:55:48 +03:00
bell@sanja.is.com.ua
2f5c9b7aa5 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-innodb-4.1
2004-06-23 18:58:52 +03:00
serg@serg.mylan
c03addab79 merged 2004-06-23 12:36:07 +02:00
serg@serg.mylan
3f1c4ba745 handler interface cleanups:
more logical table/index_flags
  return  HA_ERR_WRONG_COMMAND instead of abstract methods where appropriate
  max_keys and other limits renamed to max_supported_keys/etc
  max_keys/etc are now wrappers to max_supported_keys/etc 
  ha_index_init/ha_rnd_init/ha_index_end/ha_rnd_end are now wrappers to real {index,rnd}_{init,end} to enforce strict pairing
2004-06-23 12:29:05 +02:00
konstantin@mysql.com
b793142c8f Unused variables removed (many files). 2004-06-21 20:39:19 +04:00
bell@sanja.is.com.ua
98a7b49dc5 do not unlock tables early if we have subquery in HAVING clause (BUG#3984) 2004-06-09 23:32:20 +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
magnus@neptunus.(none)
50ff8ea369 Formatting changes requested by Monty 2004-04-15 09:17:55 +02:00
bell@sanja.is.com.ua
d095d4753e after review changes 2004-03-20 13:36:26 +02:00
bell@sanja.is.com.ua
2b45b53066 DBUG_ASSERT(fixed == 1); added to val*
small optimisation in signed_literal
2004-03-18 15:14:36 +02:00
bell@sanja.is.com.ua
8035ce40ec DBUG_ASSERT(fixed == 0) added to fix_fields() 2004-03-17 14:26:26 +02:00
bell@sanja.is.com.ua
cd5c30c5dc fix test during merge 2004-03-16 16:30:09 +02:00
bell@sanja.is.com.ua
d2265b6345 merge 2004-03-15 13:16:40 +02:00
bell@sanja.is.com.ua
d3b96b3a6e after merge fix 2004-03-09 14:44:15 +02:00
bell@sanja.is.com.ua
7e48a0f610 merge 2004-03-09 12:52:25 +02:00
hf@deer.(none)
18d722ff93 Merging 2004-03-04 17:52:06 +04:00
bell@sanja.is.com.ua
8a442c4e0d after review fix 2004-02-20 15:37:45 +02:00
bell@sanja.is.com.ua
2d5338ceb0 revision of fix_fields calls in subqueries transformation
after merge fix
2004-02-18 22:14:41 +02:00
bell@sanja.is.com.ua
14b9fa3588 revision of fix_fields() calls (BUG2838) 2004-02-18 01:08:52 +02:00
bell@sanja.is.com.ua
272bd74abb memory leacks in PS with subqueries fixed (adddition to fix of BUG#2462) 2004-02-12 03:10:26 +02:00
bell@sanja.is.com.ua
69e2460bd4 fixed subquery with PS (BUG#2462)
fixed UNION preparation
2004-02-08 20:14:13 +02:00
bell@sanja.is.com.ua
8fdce902f9 avoid null check on fields where NULL is impossible
(BUG#2393)
2004-02-02 02:23:53 +02:00
ram@gw.mysql.r18.ru
6fab168a63 fix for the bug #2419: order by ignores rows.
null_ref_key moved to TABLE_REF.
new null range created if necessary.
2004-01-31 10:04:16 +04:00
hf@deer.(none)
7dda8c102f Merge deer.(none):/home/hf/work/mysql-4.1.clean
into deer.(none):/home/hf/work/mysql-4.1.1676
2004-01-19 21:06:27 +04:00
ram@gw.mysql.r18.ru
e289783cf8 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b2182
2004-01-19 13:00:51 +04:00
bell@sanja.is.com.ua
bcbc9ff22f Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-sub-4.1
2004-01-17 11:53:04 +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
ram@gw.mysql.r18.ru
9dba5a709b Fix for the bug #2198: SELECT INTO OUTFILE (with Sub-Select) Problem.
Proper Item_cache::setup() method.
Code cleanup.
(discussed with sanja)
2003-12-25 18:50:22 +04:00
konstantin@oak.local
d37da004f6 THD::lex now points to THD::main_lex like in 5.0
All tests pass (client_test included)
2003-12-19 20:52:13 +03:00
monty@mysql.com
031390a9a4 Fixes after merge with 4.0
Cleaned up embedded library access and query cache handling
Changed min stack size to 128K (to allow longer MyISAM keys)
Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
2003-12-19 16:25:50 +02:00
bell@sanja.is.com.ua
e756a511f8 fixed unlocking tables during subquery execution (BUG#2048) 2003-12-10 22:46:14 +02: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
7191ea0ae3 Fixed UNION fields type/length detecting 2003-11-23 02:01:15 +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
33f6f72979 join_free now is method of JOIN and commented
dependence should mean uncacheability
2003-11-02 16:31:22 +02:00