Commit graph

34 commits

Author SHA1 Message Date
gshchepa/uchum@host.loc
cf484bb18c Merge host.loc:/home/uchum/work/PP/5.0-opt-34620
into  host.loc:/home/uchum/work/5.1-opt
2008-02-28 23:01:22 +04:00
gshchepa/uchum@host.loc
c51106740d Fixed bug #34620: item_row.cc:50: Item_row::illegal_method_call(const char*):
Assertion `0' failed

If ROW item is a part of an expression that also has
aggregate function calls (COUNT/SUM/AVG...), a
"splitting" with an Item::split_sum_func2 function
is applied to that ROW item.
Current implementation of Item::split_sum_func2
replaces this Item_row with a newly created
Item_aggregate_ref reference to it.
Then the row cache tries to work with the
Item_aggregate_ref object as with the Item_row object:
row cache calls row-emulation methods such as cols and
element_index. Item_aggregate_ref (like it's parent
Item_ref) inherits dummy implementations of those
methods from the hierarchy root Item, and call to
them leads to failed assertions and wrong data
output.

Row-emulation virtual functions (cols, element_index, addr,
check_cols, null_inside and bring_value) of Item_ref have
been overloaded to forward calls to an underlying item
reference.
2008-02-28 22:53:31 +04:00
gkodinov/kgeorge@macbook.gmz
fe03f6bbe0 Bug #27531: 5.1 part of the fix
- Renamed "Using join cache" to "Using join buffer".
- "Using join buffer" is now printed on the last
  table that "reads" from the join buffer cache.
2007-05-29 15:58:18 +03:00
gkodinov/kgeorge@magare.gmz
306371a850 bug #27531: 5.1 part of the fix:
- added join cache indication in EXPLAIN (Extra column).
 - prefer filesort over full scan over 
   index for ORDER BY (because it's faster).
 - when switching from REF to RANGE because
   RANGE uses longer key turn off sort on
   the head table only as the resulting 
   RANGE access is a candidate for join cache
   and we don't want to disable it by sorting
   on the first table only.
2007-05-04 18:06:06 +03:00
evgen@moonbone.local
4434ff13a9 Merge moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt
2007-04-21 00:33:56 +04:00
gshchepa/uchum@gshchepa.loc
4fcf1316bb Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt-27704
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-27704
2007-04-20 15:31:33 +05:00
gshchepa/uchum@gshchepa.loc
f5a229b3d1 Bug#27704: incorrect comparison of rows with NULL components
Support for NULL components was incomplete for row comparison,
fixed.  Added support for abort_on_null at compare_row() like
in 5.x
2007-04-20 15:14:09 +05:00
igor@olga.mysql.com
e04289704d Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.1-opt
2007-04-11 15:12:49 -07:00
igor@olga.mysql.com
e1efba0225 Post-merge fix. 2007-04-11 12:45:27 -07:00
igor@olga.mysql.com
3b990d2cf4 Merge olga.mysql.com:/home/igor/dev-opt/mysql-4.1-opt-bug27484
into  olga.mysql.com:/home/igor/mysql-5.0-opt
2007-04-11 11:57:40 -07:00
igor@olga.mysql.com
520b144007 Fixed bug #27484: a crash when incompatible row expressions with nested rows
are used as arguments of the IN predicate.
Added a function to check compatibility of row expressions. Made sure that this
function to be called for Item_func_in objects by fix_length_and_dec().
2007-04-11 11:41:12 -07:00
igor@olga.mysql.com
5534f099f1 Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.1-opt
2007-04-01 14:00:56 -07:00
igor@olga.mysql.com
0c5ba6246b Fixed bug #27154: memory corruption when using row equalities in where
conditions.
When allocating memory for KEY_FIELD/SARGABLE_PARAM structures the
function update_ref_and_keys did not take into account the fact that
a single row equality could be replaced by several simple equalities.
Fixed by adjusting the counter cond_count accordingly for each subquery
when performing substitution of a row equality for simple equalities.
2007-03-31 00:23:03 -07:00
gkodinov@dl145s.mysql.com
f1100c007d merge fixes 2006-09-18 18:30:51 +04:00
gkodinov@dl145s.mysql.com
ce8ed889d7 Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1
2006-09-18 12:57:20 +02:00
igor@rurik.mysql.com
0e96978cf6 Fixed bug #16081: row equalities were not taken into
account by the optimizer.
Now all row equalities are converted into conjunctions of
equalities between row elements. They are taken into account
by the optimizer together with the original regular equality
predicates.
2006-09-01 04:23:04 -07:00
sergefp@mysql.com
699291a8e6 BUG#14940 "MySQL choose wrong index", v.2
- Make the range-et-al optimizer produce E(#table records after table 
                                           condition is applied),
- Make the join optimizer use this value,
- Add "filtered" column to EXPLAIN EXTENDED to show 
  fraction of records left after table condition is applied
- Adjust test results, add comments
2006-07-28 21:27:01 +04:00
bell@sanja.is.com.ua
fc070c2bcb stop on NULL comparison only if it is allowed (BUG#12509) 2005-08-18 12:07:14 +03:00
hf@deer.(none)
b552ed8fd3 Merge bk@192.168.21.1:/usr/home/bk/mysql-5.0
into deer.(none):/home/hf/work/mysql-5.0.errmsg
2005-04-06 15:51:24 +05:00
hf@deer.(none)
7cd0e43437 Stupid error message for 'insert "aaa"' into decimal column fixed 2005-04-06 15:49:55 +05:00
monty@mysql.com
5ba3f707f7 Don't use -lsupc++ with gcc 3.3 and below as this gives linking problems when linking staticly
Fix that mysql.proc works with new VARCHAR fields
Give warnings for wrong zero dates
2005-04-04 16:43:25 +03:00
monty@mysql.com
201ee3eb78 Invalid DEFAULT values for CREATE TABLE now generates errors. (Bug #5902)
CAST() now produces warnings when casting a wrong INTEGER or CHAR values. This also applies to implicite string to number casts. (Bug #5912)
ALTER TABLE now fails in STRICT mode if it generates warnings.
Inserting a zero date in a DATE, DATETIME or TIMESTAMP column during TRADITIONAL mode now produces an error. (Bug #5933)
2005-04-01 15:04:50 +03:00
hf@deer.(none)
b94a482ee9 Precision Math implementation 2005-02-09 02:50:45 +04:00
bell@sanja.is.com.ua
4c774e0c18 fixed flags of printed query 2004-05-13 23:47:20 +03:00
bell@sanja.is.com.ua
33346e26af added code covarage for functions convert(), nullif(), crc32(), is_used_lock(), char_lengtrh(), bit_xor()
added string length for more speed
made code covarage for print() method of Item
fixed printability of some items (SCRUM) (WL#1274)
2003-10-30 12:57:26 +02:00
bell@laptop.sanja.is.com.ua
e527f268d5 fixed error names 2003-10-06 22:35:05 +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
Sinisa@sinisa.nasamreza.org
9c8838749f Fix for a bug with ROW(..) <=> ROW(...) 2003-03-10 20:54:18 +02:00
bell@sanja.is.com.ua
a662f7e105 fixed row items with group functions
fixed layout
2003-01-29 20:44:47 +02:00
serg@serg.mysql.com
2fd8380c0c making the keyword ROW for row items optional 2003-01-26 20:01:45 +01:00
monty@mashka.mysql.fi
1f6ecc0cd3 Changed mysql-test to print warnings for not existing table to DROP TABLE
Cleaned up test; Removed wrong DROP TABLE commands and use standard table and database names.
changed store_warning() -> push_warning_print()
2003-01-06 01:48:59 +02:00
bell@sanja.is.com.ua
5fc21bc187 postreview fix (SCRUM)
NULL fixed
max_length fixed
layout fixed
2002-12-10 18:10:00 +02:00
bell@sanja.is.com.ua
814510d547 optimized IN with Rows (SCRUM)
NULL with row (IN)
cardinality error of row inside row
new[]
fixed layout
2002-12-08 03:19:03 +02:00
bell@sanja.is.com.ua
67eebb4382 IN with row item without constant optimisation (SCRUM)
renamed row item test
2002-12-07 19:58:05 +02:00
Renamed from mysql-test/r/row_test.result (Browse further)