Commit graph

290 commits

Author SHA1 Message Date
monty@mashka.mysql.fi
a9146ace70 Cleanups to recent patches
Fix packet error when using wrong GRANT command
2003-08-15 09:54:19 +03:00
monty@mashka.mysql.fi
fb47e64256 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0
2003-08-13 13:26:52 +03:00
monty@mashka.mysql.fi
2fb441fdf7 Remove wrong bug fix when calling create_sort_index.
Fix possible replication bug with LOAD DATA ... IGNORE LINES #
2003-08-10 05:14:16 +03:00
serg@serg.mylan
083acc29bb BETWEEN bug fix: non-const expressions on both ends 2003-08-09 01:20:02 +02:00
serg@serg.mylan
4e22494ebf outer join, impossible on condition, where, and usable key for range
bug#926
2003-07-25 14:32:03 +02:00
ram@mysql.r18.ru
4ca9718375 Fix for the bug #801: create table t1 select x'41'; doesn't work 2003-07-11 14:17:18 +05:00
serg@serg.mylan
bbe08e4a03 finally proper recursive descent for parsing expressions with MATCH ... AGAINST in add_ft_keys() 2003-07-07 19:02:58 +02:00
serg@serg.mylan
ec1aca5c52 correct (finally) condition for MATCH >0, >=0 etc in add_ft_keys (SW#1647)
still no rec. descent
2003-07-07 16:45:19 +02:00
serg@serg.mylan
6a40b8e889 merge + order by (bug #515) temporary fix
properly fixed in 4.1
2003-07-04 14:42:57 +02:00
hf@deer.(none)
0cdf7f39af Proposed bugfix for #717
Current table is placed into read_tables set of the current join_tab->select
so get_mm_parts function thinks that current table's record is read and
tries to calculate WHERE condition with the fields of the record.
Result of these calculations is unpredictable.
Looks funny - outcome of the SELECT depends on the queries executed before.

Anyway i think we should have testcase on this part of the code.
2003-07-03 10:42:13 +05:00
Sinisa@sinisa.nasamreza.org
b7644c9212 merge changes 2003-07-02 00:26:23 +03:00
Sinisa@sinisa.nasamreza.org
c1660e1a23 Lot's of clean-ups and fixes for 4.0.14. 2003-07-02 00:10:47 +03:00
monty@mashka.mysql.fi
ca2913a07e Merge with 3.23 tree to get latest bug fixes 2003-07-01 15:02:16 +03:00
monty@mashka.mysql.fi
5dab55de73 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0
2003-07-01 13:30:55 +03:00
monty@mashka.mysql.fi
730776c452 Fixed 'Unknown error' when doing ORDER BY on reference table which
was used with NULL value on NOT NULL column. (Bug #479)
2003-06-29 21:15:51 +03:00
monty@mashka.mysql.fi
34919a03c4 Added thread variable max_seeks_for_key
Change optimizer to prefer key lookups before table scan
Change table scans to be done after tables with constrains on scanned table
2003-06-27 03:04:54 +03:00
Sinisa@sinisa.nasamreza.org
66b60b57af Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2003-06-25 18:40:31 +03:00
Sinisa@sinisa.nasamreza.org
1d93c8f550 Fix for a bug which results in "Unknown Error".
Query should actually return empty result set, but currently can't, as
it attempts to store NULL in NOT NULL field, because that is a match
made by self join conditions.
2003-06-25 18:36:52 +03:00
hf@deer.(none)
0ede29ffd0 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.0
into deer.(none):/home/hf/work/mysql-4.0.674
2003-06-25 17:16:53 +05:00
monty@narttu.mysql.fi
28e96d95c5 Simple code cleanup 2003-06-23 20:05:54 +03:00
hf@deer.(none)
f0f92fe443 Proposed fix for #674
This crash happens in rather exotic case when we try to run 
SELECT DISTINCT some_func(SUM(some_field)) GROUP BY another_field;
on a table with single row.
Optimizer marks this table as const, sets group=NULL (with remove_const)
thus, create_tmp_table makes mistake collecting columns for temporary table
and then crashes because the field_count gets less than hidden_columns_count.
2003-06-21 16:59:40 +05:00
serg@serg.mylan
b387b5add9 fulltext and left join bug fixed 2003-06-16 23:05:45 +02:00
monty@narttu.mysql.fi
2693203a08 Fixed problem with ansi mode and GROUP BY with constants. (Bug #387) 2003-05-13 19:26:07 +03:00
heikki@hundin.mysql.fi
ef6f91458d sql_select.cc, opt_sum.cc:
Fix bug: if MIN() or MAX() resulted in a deadlock or a lock wait timeout, MySQL did not return an error, but NULL as the function value
2003-05-07 19:01:45 +03:00
monty@mashka.mysql.fi
dd377bfba6 Fixed problem when comparing a key for a multi-byte-character set. (bug 152)
Use 0x.... as strings if 'new' mode. (bug 152)
Don't report -max on windows when InnoDB is enabled. (bug 332)
Reset current_linfo;  This could cause a hang when doing PURGE LOGS.
Fix for row numbers in EXPLAIN (bug 322)
 Fix that USE_FRM works for all table types (bug 97)
2003-04-27 22:12:08 +03:00
monty@mashka.mysql.fi
bf6cfd2948 Fix for -fbranch-probabilites (bug 268)
Fix for LEFT/RIGHT/MID with multi-byte-character sets (bug 314)
Fix for new bison 1.875
max_insert_delayed_threads and delayed_insert_timeout now works as documented (bug 211)
Don't show port in SHOW PROCESSLIST for system threads
Fix problem with ORDER BY being discarded for some DISTINCT queries (bug 275)
Fixed bug with NATURAL LEFT JOIN, NATURAL RIGHT JOIN and RIGHT JOIN when
using many joined tables (Bug 212)
2003-04-26 20:43:28 +03:00
monty@narttu.mysql.fi
f6a43bd567 Fixes for valgrind
Added optimzation for clustered index
Fixed bug in UPDATE ... ORDER BY
Fixed handling of UPDATE ... LIMIT
2003-04-23 21:52:16 +03:00
serg@serg.mysql.com
026ec1d37c merged 2003-03-13 13:44:03 +01:00
bell@sanja.is.com.ua
91fc15fc6d added comment 2003-03-12 22:50:22 +02:00
monty@mashka.mysql.fi
47ec22d83f Fix for replication of INSERT | REPLACE | CREATE ... SELECT 2003-03-12 07:51:08 +02:00
guilhem@mysql.com
1434bc5db1 Fix for bug #136. We must write the
INSERT into u SELECT * from t
to the binlog
BEFORE unlocking t (which was read-locked at least in MyISAM),
and not the contrary.
2003-03-12 01:05:04 +01:00
bell@sanja.is.com.ua
b283e08cf3 fixed bug of unchecked random part of WHERE clause (bug #142) 2003-03-11 18:34:00 +02:00
monty@mashka.mysql.fi
d56e2acf50 Merge to get fix for LOCK TABLES + DROP TABLE in another thread 2003-03-07 01:20:56 +02:00
Sinisa@sinisa.nasamreza.org
c89c969b7c A fix for new conditions being defined and upper condition not updated 2003-02-06 18:50:12 +02:00
monty@mashka.mysql.fi
cf9668fd37 Added START TRANSACTION syntax
Added ALL as parameter option for all group functions.
Make join handling uniform. This allows us to use ',', JOIN and INNER JOIN the same way.
Sort NULL last if DESC is used (ANSI SQL 99 requirement)
2003-02-06 16:55:59 +02:00
monty@mashka.mysql.fi
e3cd63521c Fix for MIN/MAX with empty tables
MIN(key_column) could in some cases return NULL on a column with NULL and other values.
MIN(key_column) and MAX(key_column) could in some cases return wrong values when used in OUTER JOIN.
2003-02-03 20:20:32 +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
monty@mashka.mysql.fi
fab7f39e42 Fixed bug with EXPLAIN on empty table 2003-01-20 18:17:14 +02:00
monty@mashka.mysql.fi
a5e30be0d0 Fixed bug in LEFT JOIN with impossible ON/WHERE expression 2003-01-19 17:15:14 +02:00
monty@mashka.mysql.fi
3c08da957e Don't count NULL values in cardinalty for MyISAM tables.
Free row buffer cache after each query for MyISAM tables.
Added table join option FORCE INDEX
Fixed core dump bug when connecting with hostname that could not be resolved.
2003-01-09 02:19:14 +02:00
Sinisa@sinisa.nasamreza.org
0ccaf94016 Fixing that 3.23 API / clients do not disconnect if a large
packet is issued.
2003-01-04 21:02:58 +02:00
Sinisa@sinisa.nasamreza.org
669184f41e many bug fixes 2002-12-23 14:56:41 +02:00
heikki@hundin.mysql.fi
843e1d8e9c Many files:
Merge InnoDB-4.0.7. Support for ON UPDATE CASCADE
sql_select.cc:
  Remove superfluous prints to .err log when a locking SELECT fails to a deadlock or a lock wait timeout
2002-12-22 01:54:29 +02:00
serg@serg.mysql.com
9a3f3a124d incorrect bugfix removed. EQ+BETWEEN still cannot be optimized :( 2002-12-10 00:07:25 +01: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
Sinisa@sinisa.nasamreza.org
dd2012067e A fix for the bug in a SELECT with joined tables with ORDER BY and
LIMIT clause when filesort had to be used.

In that case LIMIT was applied to filesort of one of the tables, 
although it could not be.

This fix solved problems with LEFT JOIN too...
2002-12-04 15:27:08 +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
d02d23c4c0 Fixed some bugs from last multi-table-update push.
More tests for multi-table-update & timestamp handling
2002-12-01 00:48:35 +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
serg@serg.mysql.com
0a75fe85d1 merge::records_in_range and optimizer 2002-11-17 18:58:03 +01:00