Commit graph

247 commits

Author SHA1 Message Date
bell@sanja.is.com.ua
c2f194f243 repetable test replaced with inline function 2004-05-04 16:37:04 +03:00
timour@mysql.com
9f1fd5bd90 Implementation of WL#1469 (Greedy algorithm to search for an optimal execution plan). 2004-04-16 13:21:08 +03:00
pem@mysql.com
dfd59e296e Merge 4.1 -> 5.0. 2004-04-07 19:07:44 +02:00
bell@sanja.is.com.ua
8035ce40ec DBUG_ASSERT(fixed == 0) added to fix_fields() 2004-03-17 14:26:26 +02:00
igor@rurik.mysql.com
f18e0068ba Manual merge 2004-02-19 01:09:54 -08:00
pem@mysql.com
c8585f3283 Merge 4.1 into 5.0. 2004-02-10 18:44:02 +01:00
bell@sanja.is.com.ua
0aa7a4b4ea after merge & valgrind test fixes (BUG#2120) 2004-02-10 02:18:22 +02:00
bell@sanja.is.com.ua
b99d13582b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1
2004-02-09 12:10:12 +02:00
bell@sanja.is.com.ua
2a9cd37cd6 now all tables of query are locked in one place (including derived tables)
fixed BUG#2120 and other problem with EXPLAINing derived tables
2004-02-01 15:30:32 +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
igor@rurik.mysql.com
c236568ac9 Auto Merge 2003-12-23 02:24:12 -08:00
sergefp@mysql.com
60563049e9 Merge mysql.com:/home/psergey/mysql-5.0-latest-pull
into mysql.com:/home/psergey/mysql-5.0-imerge-unique
2003-12-09 23:41:25 +03:00
igor@rurik.mysql.com
e235d796c9 Merge 2003-12-01 18:47:19 -08:00
pem@mysql.com
6e717133c5 Merge 4.1 to 5.0 2003-12-01 16:14:40 +01: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
igor@rurik.mysql.com
be27811faa Post-merge after itroducing Item_equal 2003-11-26 17:54:20 -08:00
igor@rurik.mysql.com
3938ac5436 This ChangeSet Introdices Item_equal.
The objects of this class represent multiple conjunctive equalities
in where conditions: =(f1,f2,...fn) <=> f1=f2 and f2= ... and =fn.
The objects are used to generate new possibale paths to access
the tables when executing a query.
They are also used to optimize the execution plan 
chosen by the optimizer for the query.
2003-11-26 17:23:52 -08:00
sergefp@mysql.com
5f9718adfb Merging index_merge/Unique into 5.0 2003-11-23 15:17:46 +03:00
bell@sanja.is.com.ua
7191ea0ae3 Fixed UNION fields type/length detecting 2003-11-23 02:01:15 +02:00
sergefp@mysql.com
4f721196f3 Post-merge fixes 2003-11-22 00:20:48 +03:00
monty@mysql.com
8aeb63dd3b Update VC++ files
Portability fixes
After merge fixes
2003-11-21 01:53:01 +02:00
sergefp@mysql.com
30b3c3bf1b Merged, most likely needs post-merge fix 2003-11-21 00:27:54 +03:00
sergefp@mysql.com
1c61a92ba7 index_merge implementation using Unique class, to be merged into 5.0 2003-11-19 00:37:17 +03:00
psergey@psergey.(none)
4894565432 merging in index_merge (in progress, not yet working) 2003-11-13 22:14:37 +03:00
psergey@psergey.(none)
ca6c4cc30b Added index_merge access method 2003-11-13 17:52:02 +03:00
bell@sanja.is.com.ua
e025adb403 Merge 2003-11-03 08:47:27 +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
bell@sanja.is.com.ua
dba82596aa merge 2003-10-31 23:03:27 +02:00
bell@sanja.is.com.ua
0747324ede merge 2003-10-31 22:14:49 +02:00
serg@serg.mylan
b1f5a03685 Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2003-10-31 14:25:38 +01:00
ram@gw.mysql.r18.ru
90ffe1be00 WL #1056: Eliminate NOT operators from where condition 2003-10-31 13:02:16 +04: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
serg@serg.mylan
8cc3951c8f key_map with more that 64 bits width 2003-10-11 13:06:55 +02:00
bell@laptop.sanja.is.com.ua
99fe76453e samall optimisation (any independent query will not save data for rexecution)
saving/restoring join_tab array (to save it of chnging by create_sort_index() before reexecuting)
(BUG#1523)
2003-10-10 21:49:48 +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
3d2a3804a1 reset() split in 2 function clear() & add()
aggregate function reinitialization (if no rows was found) made with help of clear()
(fixed BUG#860)
2003-08-28 03:10:14 +03:00
bell@sanja.is.com.ua
758129279f Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-08-13 10:12:41 +03:00
bell@sanja.is.com.ua
b6a8d68ae4 fixed problem with reference on derived table fields (BUG#1031) 2003-08-12 15:04:49 +03:00
bell@sanja.is.com.ua
7e34954b5e new optimisation for ref_null (SCRUM) (WL#818) 2003-07-17 19:39:31 +03:00
serg@serg.mylan
da5a81cf1f cut&paste fixed 2003-07-15 15:20:22 +02: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
acece34bce Merge sanja.is.com.ua:/home/bell/mysql/bk/work-top3-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-simple_in-4.1
2003-07-07 18:51:14 +03:00
bell@sanja.is.com.ua
5c836428eb merge 2003-07-07 18:49:54 +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
bfc70eb9c9 fixed subselect with to temporary tables executing
(now it return correct results. Test was commited before, but it is not pushed,
BUG# is not registered, because bug was introduced after release)
2003-07-07 00:45:51 +03:00
bell@sanja.is.com.ua
7b450a4fda avoiding of allocating JOIN structure on every UNION executing
(SCRUM)
2003-07-05 17:21:39 +03:00
bell@sanja.is.com.ua
b6f39d22e5 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-alloc_group-4.1
2003-07-01 19:48:31 +03:00
bell@sanja.is.com.ua
791ae8d34d merge 2003-07-01 13:57:46 +03:00
monty@mashka.mysql.fi
dbebed97e4 Remove FORCE_INIT_OF_VARS when compiling for valgrind/purify to spot wrong LINT_INIT() options
Fixed bug in ALTER TABLE ... MODIFY integer-column
Added ref_or_null optimization (needed for subqueries)
2003-06-30 13:23:54 +03:00
monty@narttu.mysql.fi
23145cfed7 Added SQLSTATE to client/server protocol
bmove_allign -> bmove_align
Added OLAP function ROLLUP
Split mysql_fix_privilege_tables to a script and a .sql data file
Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects.
Added table_alias_charset, for easier --lower-case-table-name handling
Better SQL_MODE handling (Setting complex options also sets sub options)
New (faster) assembler string functions for x86
2003-06-04 18:28:51 +03:00
bell@sanja.is.com.ua
98ffed1808 priventing allocation unused Item_buff (alloc_group_fields()) 2003-05-30 22:14:52 +03:00
Sinisa@sinisa.nasamreza.org
3ca1a152eb Making a better fix for double released pointers and safe
TMP_TABLE_PARAM.
This involved moving things around in include files.
All tests, including the ones with Valgrind passed.
2003-04-26 15:12:14 +03:00
serg@serg.mysql.com
15ff383e20 Merge bk-internal:/home/bk/mysql-4.1/
into serg.mysql.com:/usr/home/serg/Abk/mysql-4.1
2003-03-14 20:25:50 +01:00
serg@serg.mysql.com
9749ece292 cleanup 2003-03-14 20:22:06 +01:00
Sinisa@sinisa.nasamreza.org
ffa8a47b6d three bug fixes and major code cleanup 2003-03-06 17:02:10 +02:00
monty@mashka.mysql.fi
023d6dd39b Merge with 4.0.11 2003-02-04 21:52:14 +02:00
bell@sanja.is.com.ua
62902a3b4b after-review changes (577 SCRUM) 2003-02-02 23:30:01 +02:00
bell@sanja.is.com.ua
5ed5dac01b cyclic reference test removed, becouse testing of Item::fixed field apply more strict limitation 2003-01-30 14:35:07 +02:00
bell@sanja.is.com.ua
214036a7f6 improving of fields list creation in derived tables and unions
fixed length of fields created in fubselect
fixed resolving fields of reduced in derived table subselect
2003-01-29 19:42:39 +02:00
monty@mashka.mysql.fi
689578a099 Fixes for Netware
Call pthread_mutex_destroy() on not used mutex.
Changed comments in .h and .c files from // -> /* */
Added detection of mutex on which one didn't call pthread_mutex_destroy()
Fixed bug in create_tmp_field() which causes a memory overrun in queries that uses "ORDER BY constant_expression"
Added optimisation for ORDER BY NULL
2003-01-28 08:38:28 +02:00
bell@sanja.is.com.ua
44d8a8cdab merging 2003-01-25 13:19:46 +02:00
bell@sanja.is.com.ua
d56e23f64e fixed subselects with temporary tables (SCRUM)
fixed memory leacks
2003-01-25 02:25:52 +02:00
monty@mashka.mysql.fi
22aaac013b Fixed that derived tables are properly droped 2003-01-07 11:45:06 +02:00
monty@mashka.mysql.fi
35ff08c2af After merge fixes
Added THD to add_to_xxx_list() functions for faster parsing.
2002-12-06 21:11:27 +02:00
monty@mashka.mysql.fi
859b688476 Merge with 4.0.6 2002-12-05 19:38:42 +02:00
monty@mashka.mysql.fi
7d681c4449 Copy arguments given to mysql_server_init()
Made keybuff_size longlong (To make show variables work similar on 32
and 64 bit systems)
Fixed some 'not initalized variable errors' in multi-table-update.
Fixed memory leak in multi-table-update.
Now all tests works under valgrind without any errors.
2002-12-05 16:38:49 +02:00
monty@hundin.mysql.fi
8830eb4aa9 Change of internal key_field=NULL handling to avoid error messages.
Optimized SELECT DISTINCT ... ORDER BY ... LIMIT
Fixed reference to uninitalized variable
2002-12-03 13:08:25 +02:00
monty@mashka.mysql.fi
6603d75213 New multi-table-update code
New (simpler) internal timestamp handling.
More debuging to heap tables.
Small cleanups to multi-table-delete
false -> 0 and true -> 1  (We should use TRUE and FALSE)
2002-11-29 16:40:18 +02:00
bell@sanja.is.com.ua
41d9311621 fixed cyclic reference bug 2002-11-14 00:26:18 +02:00
bar@bar.mysql.r18.ru
95aef91521 BINARY charset is now used instead of binary_flag 2002-10-25 13:58:32 +05:00
bell@sanja.is.com.ua
199f667c19 merging 2002-10-04 14:15:59 +03:00
monty@mashka.mysql.fi
d69250a969 Fixes and code cleanups after merge with 4.0.3
Warning handling and initial prepared statement handling (last not complete yet)
Changed a lot of functions that returned 0/1 to my_bool type.
GRANT handling now uses read/write locks instead of mutex
Change basic net functions to use THD instead of NET
(needed for 4.1 protocol)
Use my_sprintf instead of sprintf() + strlen()
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()

Note that the following test fails (will be fixed ASAP):
sub_select, union, rpl_rotate_logs and rpl_mystery22
2002-10-02 13:33:08 +03:00
bell@sanja.is.com.ua
d9989c635e merged 2002-09-03 10:06:10 +03:00
bell@sanja.is.com.ua
b07aaeb295 subselect with union
new error handling
Item_ref bug fixed
2002-09-03 09:50:36 +03:00
Sinisa@sinisa.nasamreza.org
22bcce253e Adding a necessary functionality to ::store and ::save_in_field
that will take place properly after pull from 4.0, in order to 
handle conversions from quoted constants to bigint's.
2002-08-24 14:49:04 +03:00
bell@sanja.is.com.ua
59602212d2 merge 2002-05-26 22:57:08 +03:00
bell@sanja.is.com.ua
35faf872aa added depended subselect processing 2002-05-26 22:50:32 +03:00
bar@gw.udmsearch.izhnet.ru
196aa19cf6 Now string values are created and filled with charset field
SELECT func(charset2) FROM t ORDER BY 1 works in correct charset
2002-05-17 16:29:52 +05:00
bell@sanja.is.com.ua
e077890b04 simple subselects ported to new select_lex structures 2002-05-12 23:46:42 +03:00
bell@sanja.is.com.ua
ead6f225a4 new SELECT_LEX structures used for storing global ORDER BY, global LIMIT & limit counters 2002-05-08 23:14:40 +03:00
monty@hundin.mysql.fi
4609e627a5 Increase max package length to 512M for mysql and mysqldump.
Faster 'read_first_row' (Fixes slow 'preparing' state)
Read constant tables earlier, which provides better optimzations when using tables with <=1 row.
This also fixes a complicated bug involving const tables.
2002-01-23 02:52:26 +02:00
monty@tik.mysql.fi
7dd4eb71fe Added support of null keys in HEAP tables
Added ORDER BY optimization
2002-01-12 15:42:54 +02:00
monty@hundin.mysql.fi
b658662ae4 Update copyright
Fixed memory leak on shutdown (Affects the embedded version & MyODBC)
2001-12-06 14:10:51 +02:00
monty@hundin.mysql.fi
1de4fff5ba Update of query cache code.
Changed some sql_alloc() -> thd->alloc()
Removed a lot of compiler warnings on Linux Alpha (64 bit)
Fixed some core dumps on 64 bit systems (wrong type for packet_len)
2001-12-05 13:03:00 +02:00
monty@tik.mysql.fi
b13d453d50 Fix UNION
New faster list iterators
Change list code to be simpler and faster
Optimize count(distinct)
New error messages for UNION
Make create_tmp_table more general to be usable by UNION
2001-08-02 06:29:50 +03:00
monty@work.mysql.com
df56b252a7 merge 2001-05-31 12:56:05 +02:00
monty@hundin.mysql.fi
6a387c7cdf Added functions for symbolic link handling to make it possible to
backport things from 4.0. This is safe as the functions are not used!
Fixed bug in new mutex handling in InnoDB
Make allow_break() and dont_break() defines.
2001-05-31 12:18:53 +03:00
monty@tik.mysql.fi
8685094e15 Don't write rows in MyISAM tables when using count(distinct)
Don't read MyISAM header when running without locking
2001-05-23 02:40:46 +03:00
sasha@mysql.sashanet.com
7c9b9f471c Merged with 3.23, needs further fix-up 2001-05-10 15:06:35 -06:00
monty@donna.mysql.fi
21e7c668ff Portability fixes for Ia64 and Sgi compiler
DROP DATABASE in mysqladmin asks for confirmation (again)
Added examined_rows to slow query log
SHOW CREATE for TEMPORARY table
2001-04-25 22:44:27 +03:00
monty@donna.mysql.fi
9ee2a297c0 Fixes for embedded MySQL
Some limit optimization
2001-04-25 01:11:29 +03:00
monty@donna.mysql.fi
417dd72856 Added SQL_CALC_FOUND_ROWS and FOUND_ROWS() 2001-04-12 00:54:35 +03:00
monty@donna.mysql.com
ce2260586d Fixed ALTER TABLE on MERGE tables
Fixed bug in DISTINCT
2001-01-28 21:35:50 +02:00
monty@donna.mysql.com
7ac13c89e6 Fix of LEFT JOIN optimizer bug, problem with key cache on Windows and
a lot of portability issues.
2000-10-14 03:16:35 +03:00
monty@tik.mysql.com
09dce662e2 Automatic repair of MyISAM tables + portability fixes 2000-10-11 00:06:37 +03:00
monty@tramp.mysql.fi
207548a836 DISTINCT optimization
Fixes when using column privileges
Manual updates
2000-10-06 21:15:03 +03:00
bk@work.mysql.com
f4c589ff6c Import changeset 2000-07-31 21:29:14 +02:00