Commit graph

1520 commits

Author SHA1 Message Date
unknown
f3f84ed8a0 Fix bug#7672 Unknown column error in order clause
When fixing Item_func_plus in ORDER BY clause field c is searched in all
opened tables, but because c is an alias it wasn't found there.

This patch adds a flag to select_lex which allows Item_field::fix_fields() 
to look up in select's item_list to find aliased fields.


sql/item.cc:
  Fix bug#7672 Unknown column error in order clause
  When fixing fields in ORDER BY clause allow Item_field::fix_fields() to look up items in select's item list to find aliased fields.
sql/sql_lex.cc:
   Fix bug#7672 Unknown column error in order clause
sql/sql_lex.h:
  Fix bug#7672 Unknown column error in order clause
  Added flag to select_lex allowing Item_field::fix_fields to look up items in select's item list.
sql/sql_select.cc:
  Fix bug#7672 Unknown column error in order clause
mysql-test/t/select.test:
  Test case for bug#7672 Unknown column error in order clause
mysql-test/r/select.result:
  Test case for bug#7672 Unknown column error in order clause
2005-10-09 23:05:44 +04:00
unknown
a724dbc039 make the same filenames as in 4.1
mysql-test/t/query_cache_notembedded.test:
  Rename: mysql-test/t/query_cache_noembeded.test -> mysql-test/t/query_cache_notembedded.test
mysql-test/r/query_cache_notembedded.result:
  Rename: mysql-test/r/query_cache_noembeded.result -> mysql-test/r/query_cache_notembedded.result
2005-08-11 09:29:50 +03:00
unknown
307ed9b4da block using QC in case of having tables locked by LOCK... (BUG#12385)
sql/sql_cache.cc:
  block QC using if tables are locked with LOCK
  unlock QC
mysql-test/r/query_cache_noembeded.result:
  New BitKeeper file ``mysql-test/r/query_cache_noembeded.result''
mysql-test/t/query_cache_noembeded.test:
  New BitKeeper file ``mysql-test/t/query_cache_noembeded.test''
2005-08-10 18:58:55 +03:00
unknown
04bf09424d Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-4.0
into  krsna.patg.net:/home/patg/mysql-build/mysql-4.0
2005-08-04 15:48:01 -07:00
unknown
451ec64db9 BUG#11684 fix.
Repair crashes mysql when table has fulltext index.


myisam/sort.c:
  Use static ft_buf instead of dynamic mergebuf. Latter could be NULL if record has long words.
mysql-test/r/fulltext.result:
  Test case for BUG#11684 - repair crashes mysql when table has fulltext index.
mysql-test/t/fulltext.test:
  Test case for BUG#11684 - repair crashes mysql when table has fulltext index.
2005-08-02 11:33:26 +05:00
unknown
16c4593089 BUG 11104 (same as changeset 1.1891 on the 5.0 tree, but realised this
needed to be fixed in earlier versions)
Fixed the iteration of how substrings are handled with negative indexes in 
SUBSTRING_INDEX


mysql-test/r/func_str.result:
  New results for the fix to substring_index
mysql-test/t/func_str.test:
  Added tests for fix to substring_index, various lenth search patterns. Also included
  are the queuries the user who reported the bug listed in the bug report
sql/item_strfunc.cc:
  Fix to BUG 11104 
      Took out the offset-=delimiter_length-1 out of the for loop. It was causing
      basically this: 
      select substring_index('the king of the the hill', 'the', -2) to not work.
      The first iteration, offset would be initialised to 24, then strstr would 
      point at 'the king of the the* hill' ('*'means right before the 
      character following), returning a offset of 16. The for loop would then 
      decrement offset by two (3 - 1), to 14, now pointing at 
      "the king of th*e the hill", _skipping_ past the 'e' in the second to last
      'the', and therefore strstr would never have a chance of matching the 
      second to last 'the', then moving on to the 'the' at the begginning of the 
      string!
  
      In a nutshell, offset was being decremented by too great a value, preventing
      the second to last 'the' from being ever found, hence the result of 
      'king of the the hill' from the query that is reported in the bug report
2005-07-31 21:28:52 -07:00
unknown
f956ecd09a Bug #10901
Analyze table corrupts the state on
data_file_length, records, index_file_length...
by writing the shared state when there is an updated internal
state due to inserts or deletes
Fixed by synching the shared state with the internal state before
writing it to disk
Added test cases of 2 error cases and a normal case in new
analyze test case


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-06-03 17:13:43 +02:00
unknown
cf2188ca39 Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
1.) Added a new option to mysql_lock_tables() for ignoring FLUSH TABLES.
Used the new option in create_table_from_items().
It is necessary to prevent the SELECT table from being reopend.
It would get new storage assigned for its fields, while the
SELECT part of the command would still use the old (freed) storage.
2.) Protected the CREATE TABLE and CREATE TABLE ... SELECT commands
against a global read lock. This prevents a deadlock in
CREATE TABLE ... SELECT in conjunction with FLUSH TABLES WITH READ LOCK
and avoids the creation of new tables during a global read lock.
3.) Replaced set_protect_against_global_read_lock() and
unset_protect_against_global_read_lock() by
wait_if_global_read_lock() and start_waiting_global_read_lock()
in the INSERT DELAYED handling.


mysql-test/r/create.result:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Added test results.
mysql-test/t/create.test:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Added tests which do not require concurrency.
sql/lock.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Added a new option to mysql_lock_tables() for ignoring FLUSH TABLES.
  Changed the parameter list.
  Removed two unnecessary functions. Their functionality is included in
  wait_if_global_read_lock() and start_waiting_global_read_lock().
sql/mysql_priv.h:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Changed the declaration of mysql_lock_tables().
  Added definitions for the new options.
sql/sql_acl.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Adjusted mysql_lock_tables() calls to the new argument list.
sql/sql_base.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Adjusted mysql_lock_tables() calls to the new argument list.
sql/sql_handler.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Adjusted mysql_lock_tables() calls to the new argument list.
sql/sql_insert.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Replaced set_protect_against_global_read_lock() and
  unset_protect_against_global_read_lock() by
  wait_if_global_read_lock() and start_waiting_global_read_lock()
  in the INSERT DELAYED handling.
  Adjusted mysql_lock_tables() calls to the new argument list.
sql/sql_parse.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Protected the CREATE TABLE and CREATE TABLE ... SELECT commands
  against a global read lock. This prevents a deadlock in
  CREATE TABLE ... SELECT in conjunction with FLUSH TABLES WITH READ LOCK
  and avoids the creation of new tables during a global read lock.
sql/sql_table.cc:
  Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
  Adjusted mysql_lock_tables() calls to the new argument list.
  Used the new option in create_table_from_items().
2005-05-31 11:08:14 +02:00
unknown
b11b13e9bd Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/psergey/mysql-4.0-bug10095
2005-05-15 22:58:10 +02:00
unknown
06736ab48a Fix for BUG#10095: {wrong query results because of incorrect constant propagation}
The problem: base_list::remove didn't modify base_list::last when removing 
the last list element.
The fix: If we remove the last element, find the element before it (by walking
from the beginning of the list) and set base_list::last accordingly.

The list gets corrupted in both 4.0 and 4.1. There are no visible problems in 
current 4.1 because current 4.1 doesn't call where_cond->fix_fields() after 
constant propagation step.


mysql-test/r/select.result:
  Testcase for BUG#10095
mysql-test/t/select.test:
  Testcase for BUG#10095
sql/sql_list.h:
  Fix for BUG#10095: {wrong query results because of incorrect constant propagation} 
  The problem: base_list::remove didn't modify base_list::last when removing 
  the last list element.
  The fix: If we remove the last element, find the element before it (by walking
  from the beginning of the list) and set base_list::last accordingly.
2005-05-15 22:56:45 +02:00
unknown
cdd6bc9bfe Fixed wrong buffer usage for auto-increment key with blob part that caused CHECK TABLE to report that the table was wrong. (Bug #10045)
myisam/mi_key.c:
  Fixed wrong buffer usage for auto-increment key with blob part that caused
  CHECK TABLE to report that the table was wrong. (Bug #10045)
mysql-test/r/auto_increment.result:
  New test case
mysql-test/t/auto_increment.test:
  New test case
2005-05-13 23:08:29 +03:00
unknown
7c441dd115 Change create_field->offset to store offset from start of fields, independent of null bits.
Count null_bits separately from field offsets and adjust them in case of primary key parts.
(Previously a CREATE TABLE with a lot of null fields that was part of a primary key caused MySQL to wrongly count the number of bytes needed to store null bits)
This is a more complete bug fix for #6236


mysql-test/r/alter_table.result:
  More test for bug #6236 (CREATE TABLE didn't properly count not null columns for primary keys)
mysql-test/t/alter_table.test:
  More test for bug #6236 (CREATE TABLE didn't properly count not null columns for primary keys)
sql/handler.h:
  Add counter for null fields
sql/sql_table.cc:
  Change create_field->offset to store offset from start of fields, independent of null bits.
  Count null_bits separately from field offsets and adjust them in case of primary key parts.
sql/unireg.cc:
  Change create_field->offset to store offset from start of fields, independent of null bits.
  Count null_bits separately from field offsets and adjust them in case of primary key parts.
2005-05-13 11:11:50 +03:00
unknown
adefe15c9f Fix outfile test/results 2005-05-09 08:33:45 +01:00
unknown
4d1c68f8d1 Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.0
into ltantony.mysql.com:/usr/home/antony/work2/megapatch-4.0


BitKeeper/etc/logging_ok:
  auto-union
2005-05-08 23:24:33 +01:00
unknown
cdfc786f69 Merge ltantony.mysql.com:/usr/home/antony/work2/p4-bug8191
into ltantony.mysql.com:/usr/home/antony/work2/megapatch-4.0


BitKeeper/etc/logging_ok:
  auto-union
2005-05-08 23:07:46 +01:00
unknown
3ac2df4e4c Bug#8191 - SELECT INTO OUTFILE insists on FROM clause
Fix bug + include test case.
  Enable outfile tests.


mysql-test/t/outfile.test:
  Reenable outfile tests
  Add test for Bug#8191
sql/sql_yacc.yy:
  Fix Bug#8191
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-08 22:56:58 +01:00
unknown
3e1dad4115 Bug#6236
Incomplete ALTER TABLE breaks MERGE compatibility
  Fix implicit NOT NULL not set on ALTER of PK columns


mysql-test/r/alter_table.result:
  Test for Bug#6236
mysql-test/t/alter_table.test:
  Test for Bug#6236
sql/sql_table.cc:
  Implicit NOT NULL not set on ALTER of PK columns
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-08 21:03:50 +01:00
unknown
f5f132fdde Test fix. DROP TABLE added. 2005-05-07 21:37:27 +05:00
unknown
1392f4820a BUG#7709 fix - Boolean fulltext query against unsupported engines does not
fail.


mysql-test/r/innodb.result:
  Test case for BUG#7709 - Boolean fulltext query against
  unsupported engines does not fail added.
mysql-test/t/innodb.test:
  Test case for BUG#7709 - Boolean fulltext query against
  unsupported engines does not fail added.
sql/item_func.cc:
  Check if table supports fulltext.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-07 15:48:56 +05:00
unknown
2a8f6bb188 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2005-04-14 22:09:38 +02:00
unknown
1403fb000b TRUNCATE is always a transaction on itself. pretent we're in auto-commit mode
bug#8151
2005-04-14 18:14:54 +02:00
unknown
3e0a626367 Fix for bug #9796 "Query Cache caches queries with CURRENT_USER()
function".

We should not cache queries using CURRENT_USER() function as we do it
for some other functions, e.g. USER() function.


mysql-test/r/query_cache.result:
  Let us test that queries with CURRENT_USER() function are not cached.
mysql-test/t/query_cache.test:
  Let us test that queries with CURRENT_USER() function are not cached.
sql/item_create.cc:
  create_func_current_user():
    We should not cache queries which use CURRENT_USER() function.
2005-04-11 00:30:23 +04:00
unknown
64978db186 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg8894
2005-04-03 09:48:09 +04:00
unknown
7d865e0b12 bug#3891 - DROP TABLE many-unexistent-tables, was printing an error with %s instead of table names
sql/sql_table.cc: print an error with a function that respects width modifiers (%.64s)


mysql-test/r/drop.result:
  bug#3891 - DROP TABLE many-unexistent-tables, was printing an error with %s instead of table names
mysql-test/t/drop.test:
  bug#3891 - DROP TABLE many-unexistent-tables, was printing an error with %s instead of table names
sql/share/english/errmsg.txt:
  allow longer "table names" as DROP TABLE puts a list here
sql/share/russian/errmsg.txt:
  allow longer "table names" as DROP TABLE puts a list here
sql/share/ukrainian/errmsg.txt:
  allow longer "table names" as DROP TABLE puts a list here
sql/sql_table.cc:
  print an error with a function that respects width modifiers (%.64s)
2005-04-02 20:13:19 +02:00
unknown
22f6c58bb1 Fix for bug #8894 "TIMESTAMP values scrambled/misaligned when using --new".
Fixed Field_timestamp::val_int() so now it works correctly in --new mode
(or for TIMESTAMP(19) columns). 
Also removed unused Field_timestamp::fill_and_store() method.


mysql-test/r/type_timestamp.result:
  Added test for bug #8894 "TIMESTAMP values scrambled/misaligned when 
  using --new".
mysql-test/t/type_timestamp.test:
  Added test for bug #8894 "TIMESTAMP values scrambled/misaligned when 
  using --new".
sql/field.cc:
  Field_timestamp::fill_and_store() 
    Removed unused method.
  Field_timestamp::val_int()
    Even in --new mode integer representation of TIMESTAMP value should
    not exceed 14 digits.
sql/field.h:
  Removed unused Field_timestamp::fill_and_store() method.
2005-03-28 23:36:25 +04:00
unknown
7ceb5c6cef A fix (bug #8942: SUBSTRING_INDEX in UPDATE causes internal loop).
sql/key.cc:
  A fix (bug #8942: SUBSTRING_INDEX in UPDATE causes internal loop).
  For "partial" key parts (e.g. key(a(20), ...) we create different
  key_part->field, see sql/table.cc; so we have to use the eq() 
  function here to compare fields.
2005-03-17 10:24:50 +04:00
unknown
7c90fa7b2c Fix for BUG#8711: "<=>" may have true value for NULL arguments, so make
Item_func_equal::not_null_tables() always return 0.


mysql-test/r/join_outer.result:
  Testcase for BUG#8711
mysql-test/t/join_outer.test:
  Testcase for BUG#8711
sql/item_cmpfunc.h:
  Fix for BUG#8711: "<=>" may have true value for NULL arguments, i.e. it can accept NULL-complemented 
  table rows. This differs from assumptions made in Item_func::not_null_tables(), so add 
  Item_func_equal::not_null_tables().
  Item_func_equal::not_null_tables_cache value doesn't make sense now, but we still let it be
  calculated (and ignore it)
2005-03-11 02:17:03 +03:00
unknown
44d66d26dc func_str.result, func_str.test:
Added a test case for bug #8669.
item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.


sql/item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.
mysql-test/t/func_str.test:
  Added a test case for bug #8669.
mysql-test/r/func_str.result:
  Added a test case for bug #8669.
2005-03-09 00:15:51 -08:00
unknown
ebdbe9e5c3 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/psergey/mysql-4.0-look
2005-02-28 15:40:45 +03:00
unknown
6a0e1def63 Merge mysql.com:/home/bkroot/mysql-4.0
into mysql.com:/home/bk/b8412-mysql-4.0
2005-02-23 19:40:31 +01:00
unknown
026bb52678 Merge dellis@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dellis/mysqlab/bk/mysql-4.0
2005-02-16 19:15:08 -06:00
unknown
cb17889f47 fulltext.test, fulltext.result:
Test case for bug#8522, to test for out of bounds memory access in ft_nlq_find_relevance().


mysql-test/r/fulltext.result:
  Test case for bug#8522, to test for out of bounds memory access in ft_nlq_find_relevance().
mysql-test/t/fulltext.test:
  Test case for bug#8522, to test for out of bounds memory access in ft_nlq_find_relevance().
2005-02-16 03:13:29 -06:00
unknown
d6157becb3 Merge rurik.mysql.com:/home/igor/mysql-4.0
into rurik.mysql.com:/home/igor/dev/mysql-4.0-0
2005-02-15 18:48:04 -08:00
unknown
f1a97c0c49 delete.result, delete.test:
Added a test case for bug #8392.
sql_delete.cc:
  Fixed bug #8392.
  The bug caused a crash for a delete statement with ORDER BY
  that explicitly referred to the modified table.


sql/sql_delete.cc:
  Fixed bug #8392.
  The bug caused a crash for a delete statement with ORDER BY
  that explicitly referred to the modified table.
mysql-test/t/delete.test:
  Added a test case for bug #8392.
mysql-test/r/delete.result:
  Added a test case for bug #8392.
2005-02-15 18:45:42 -08:00
unknown
358cfd6c42 Better bug fix for #5569: "Incorrect "Access Denied" error with SAME login DIFFERENT host"
This fixes also the reverse lookup bug introduced by the previous patch



mysql-test/t/group_by.test:
  Remove empty line
vio/viosocket.c:
  Added function comment
2005-02-15 14:42:13 +02:00
unknown
8a8d476453 Bug#8412: For replication to work correctly, the prologue and
epilogue to an SQL statement should not have an error code even
when the SQL statement itself has an error code.


mysql-test/r/rpl_insert_id.result:
  Adding test to ensure that slave handles error statement gracefully.
mysql-test/t/rpl_insert_id.test:
  Adding test to ensure that slave handles error statement gracefully.
sql/log.cc:
  Setting error code to 0 for SQL statement prologue and epilogue.
2005-02-14 18:39:33 +01:00
unknown
9540945624 select.result, select.test:
Added a test case for bug #7520.
table.cc:
  Fixed bug #7520.
  The bug was caused by a wrong calculation of the field max_key_length for
  a TABLE structure when there was an index on a blob field.


sql/table.cc:
  Fixed bug #7520.
  The bug was caused by a wrong calculation of the field max_key_length for
  a TABLE structure when there was an index on a blob field.
mysql-test/t/select.test:
  Added a test case for bug #7520.
mysql-test/r/select.result:
  Added a test case for bug #7520.
2005-02-10 22:15:38 -08:00
unknown
df1fab9d45 Fix for BUG#7519: Index statistics is not displayed after ANALYZE for temporary tables:
Call file->extra() with HA_STATUS_CONST in mysqld_show_keys.
The fix will not be merged into 4.1/5.0 because they don't have this problem already.


mysql-test/r/show_check.result:
  Testcase for BUG#7519
mysql-test/t/show_check.test:
  Testcase for BUG#7519
sql/sql_show.cc:
  Fix for BUG#7519: Index statistics is not displayed after ANALYZE for temporary tables:
  When handling "SHOW INDEX" the call file->extra(HA_STATUS_CONST | ...) is made for regular tables 
  but bypassed for temporary tables. 
  Call file->extra() with HA_STATUS_CONST in mysqld_show_keys to make sure we're always using the 
  current index cardinality values.
2005-02-05 06:23:23 +03:00
unknown
567055363e Bug#7310
Fix test for classic builds


mysql-test/t/multi_update.test:
  Bug#7310
    Ignore warnings for Bug#5837 test
2005-02-03 18:26:59 +00:00
unknown
6d0d03dab9 Fix QUOTE() to not reuse the input field for output, which resulted in
incorrect results when the input was a constant across a multi-row SELECT
statement. (Bug #8248)


sql/item_strfunc.h:
  Add tmp_value member
sql/item_strfunc.cc:
  Always allocate a new string for QUOTE(), in case the field is being reused
  for multiple rows.
mysql-test/t/func_str.test:
  Add regression test
mysql-test/r/func_str.result:
  Add test results
2005-02-01 18:29:10 -08:00
unknown
934fde094c Bug#7011
Fix replication for multi-update
  new test - rpl_multi_update2


sql/mysql_priv.h:
  Bug#7011
    New function mysql_multi_update_lock()
sql/sql_parse.cc:
  Bug#7011
    New function check_multi_update_lock()
    For multi-update on slave, perform an early open&lock
sql/sql_update.cc:
  Bug#7011
    Split out multi-update locking into its own function,
      mysql_multi_update_lock()
2005-01-30 10:24:03 +00:00
unknown
360d32f201 Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-4000
2005-01-26 09:07:25 +01:00
unknown
8deafa8037 order_by.result, order_by.test:
Added a test case for bug #7672.
sql_yacc.yy:
  Fixed bug #7672.
  Made queries of the form (SELECT ...) ORDER BY ... to
  be equivalent to SELECT ... ORDER BY ...


sql/sql_yacc.yy:
  Fixed bug #7672.
  Made queries of the form (SELECT ...) ORDER BY ... to
  be equivalent to SELECT ... ORDER BY ...
mysql-test/t/order_by.test:
  Added a test case for bug #7672.
mysql-test/r/order_by.result:
  Added a test case for bug #7672.
2005-01-25 14:30:38 -08:00
unknown
d7d7741e5b Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-4000


sql/sql_select.cc:
  Auto merged
2005-01-24 10:08:45 +01:00
unknown
25c2d1adb0 select_found.result, select_found.test:
Added a test case for bug #7945.
sql_select.cc:
  Fixed bug #7945. If DISTINCT is used only with constants
  in a query with GROUP BY, we can apply an optimization
  that set LIMIT to 1 only in the case when there is 
  no SQL_CALC_FOUND_ROWS.


sql/sql_select.cc:
  Fixed bug #7945. If DISTINCT is used only with constants
  in a query with GROUP BY, we can apply an optimization
  that set LIMIT to 1 only in the case when there is 
  no SQL_CALC_FOUND_ROWS.
mysql-test/t/select_found.test:
  Added a test case for bug #7945.
mysql-test/r/select_found.result:
  Added a test case for bug #7945.
2005-01-22 02:40:27 -08:00
unknown
4095dbb973 Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-4000
2005-01-20 16:17:33 +01:00
unknown
353bc07096 BUG#6034 - Error code 124: Wrong medium type.
Version for 4.0. Committed for merge.
If the result table is one of the select tables in INSERT SELECT,
we must not disable the result tables indexes before selecting.
mysql_execute_command() detects the match for other reasons and
adds the flag OPTION_BUFFER_RESULT to the 'select_options'. 
In this case the result is put into a temporary table first. 
Hence, we can defer the preparation of the insert
table until the result is to be used.


mysql-test/r/insert_select.result:
  BUG#6034 - Error code 124:  Wrong medium type.
  The test results.
mysql-test/t/insert_select.test:
  BUG#6034 - Error code 124:  Wrong medium type.
  The test case.
sql/sql_select.cc:
  BUG#6034 - Error code 124:  Wrong medium type.
  With OPTION_BUFFER_RESULT in the 'select_options',
  defer the preparation of the insert table until the 
  result is to be used. Unfortunately, this happens
  at several places.
2005-01-19 21:13:30 +01:00
unknown
dd68385435 Fix over-optimization that could result in an unsigned double field being
set to a negative value. (Bug #7700)


sql/field_conv.cc:
  Don't treat real fields as identical when destination is unsigned and
  the source is not.
mysql-test/t/type_float.test:
  Add test for setting double unsigned to a negative value from a signed double
mysql-test/r/type_float.result:
  Add test results
2005-01-17 16:13:56 -08:00
unknown
15017480a7 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg7297
2004-12-30 21:18:45 +03:00
unknown
1ffd688a4a Fix for bug #7515 "from_unixtime(0) now returns NULL instead of
the Epoch". (With after review fixes).


mysql-test/r/func_time.result:
  Added test for bug #7515 "from_unixtime(0) now returns NULL instead of
  the Epoch".
mysql-test/t/func_time.test:
  Added test for bug #7515 "from_unixtime(0) now returns NULL instead of
  the Epoch".
sql/item_timefunc.cc:
  Item_func_from_unixtime:
   from_unixtime(0) should return Epoch instead of NULL.
sql/item_timefunc.h:
  Item_func_from_unixtime:
   - Removed unused method definition.
   - fix_length_and_dec() should set maybe_null to true since now
     from_unixtime() can return NULL even in case when none of its
     arguments is NULL.
2004-12-30 21:18:10 +03:00