Commit graph

1459 commits

Author SHA1 Message Date
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
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
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
cf78ff6947 distinct.result:
Adjustment of the result file after the revision of the fix for bug #7520.


mysql-test/r/distinct.result:
  Adjustment of the result file after the revision of the fix for bug #7520.
2005-02-11 13:44:54 -08:00
unknown
aa3727d7dc select.result:
After revision of the fix for bug #7520.
table.cc:
  Revised the fix for bug #7520.
  Made it compliant with 5.0 code where the bug does not exist.


sql/table.cc:
  Revised the fix for bug #7520.
  Made it compliant with 5.0 code where the bug does not exist.
mysql-test/r/select.result:
  After revision of the fix for bug #7520.
2005-02-11 10:39:26 -08: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
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
f077d4b06b Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.0
2004-12-31 12:55:42 +01:00
unknown
40a0199e77 unsufficient privilege checks in GRANT, when a grantor has column-level privileges 2004-12-30 21:01:11 +01: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
unknown
8feedada9d Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-12-23 21:11:31 +02:00
unknown
8ccfad7636 Fix for a bug #7495
mysql-test/r/func_str.result:
  result for test case for a bug in QUOTE() (Bug #7495)
mysql-test/t/func_str.test:
  test case for a bug in QUOTE() (Bug #7495)
sql/item_strfunc.cc:
  a better fix for a QUOTE() bug (Bug #7495)
2004-12-23 21:08:54 +02:00
unknown
4a5ca0bc63 Make GRANTs, which change SSL attributes and/or user limits,
to behave well on 5.0 tables (well now you can't use tables from 4.1
and 5.0 with 4.0 because former use utf8, but still it is nice to have
similar code in acl_init() and replace_user_table()).
This also will make such GRANTs working in 5.0 (they are broken now).


mysql-test/r/grant.result:
  Added test for GRANT which manipulates user limits.
mysql-test/t/grant.test:
  Added test for GRANT which manipulates user limits.
2004-12-23 21:59:36 +03:00
unknown
74cc635a7c A fix for the bug #7495
mysql-test/r/func_str.result:
  A result for test case for the bug #7495 involving either LTRIM() 
  or TRIM() within QUOTE() function.
mysql-test/t/func_str.test:
  A test case for the bug #7495 involving either LTRIM() or TRIM() 
  within QUOTE() function.
sql/item_strfunc.cc:
  Changes for LTRIM() and TRIM() functions that aleviate the bug  
  entirely.
2004-12-22 21:31:17 +02:00
unknown
63e4725503 Fix test 2004-12-18 11:57:17 +00:00
unknown
4f9a0a06a8 Bug#7391 - Multi-table UPDATE security regression
Add in missing privilege checks. 
  Tests for the privileges.


mysql-test/r/grant.result:
  Bug#7391 - Multi-table UPDATE security regression
    Tests column, table and db level access
mysql-test/t/grant.test:
  Bug#7391 - Multi-table UPDATE security regression
    Tests column, table and db level access
sql/sql_update.cc:
  Bug#7391 - Multi-table UPDATE security regression
    Add in missing privilege checks.
2004-12-18 02:07:32 +00:00
unknown
8722bb9a09 Moved drop table statement to the end.
mysql-test/r/update.result:
  moved drop statement
mysql-test/t/update.test:
  moved drop statement
2004-12-16 18:44:39 +02:00
unknown
da2c55b3ab Test for BUG#6054. The bug itsel is fixed by the fix for #5837.
mysql-test/r/update.result:
  test results
mysql-test/t/update.test:
  bug test
2004-12-16 18:04:51 +02:00
unknown
2fb340b520 Fix for bug #7297 "Two digit year should be interpreted correctly
even with zero month and day" aka "Date decoding trouble"

Two digit year should be interpreted correctly as year in 20th or 21st
century even with zero month and day. Only exception should be zero date
'00-00-00' or '00-00-00 00:00:00'.


mysql-test/r/type_datetime.result:
  Added test for bug #7297 "Two digit year should be interpreted correctly
  even with zero month and day"
mysql-test/t/type_datetime.test:
  Added test for bug #7297 "Two digit year should be interpreted correctly
  even with zero month and day"
sql/time.cc:
  str_to_TIME(): Two digit year should be interpreted correctly as year
  in 20th or 21st century even with zero month and day. Only exception 
  should be zero date '00-00-00' or '00-00-00 00:00:00'.
2004-12-16 16:31:50 +03:00
unknown
b18e8c92bc Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/dbdata/psergey/mysql-4.0-bug6976
2004-12-11 20:02:45 +03:00
unknown
b5c119e7c0 Fix for BUG#6976:
In Item_ref::Item_ref set maybe_null (and other fields fix_fields sets) to be the 
same as in (*ref), because Item_ref::fix_fields() will not be called.  Previously 
maybe_null was 0 always and this produced a bogus state where 
maybe_null==0 && is_null() == true 
which broke evaluation for some upper-level Items, like AND and OR.


mysql-test/r/group_by.result:
  Test for BUG#6976
mysql-test/t/group_by.test:
  Test for BUG#6976
sql/item.cc:
  Comment added
sql/item.h:
  Fix for BUG#6976:
    in Item_ref::Item_ref(Item**...) fix all fields because fix_fields() will not be called.
2004-12-11 19:59:09 +03:00
unknown
8e4251dd85 Fix for BUG#5837 - attempt 3.
Call mark_as_null_row in join_read_const and join_read_system.


mysql-test/r/multi_update.result:
  Testcase for BUG#5837
mysql-test/t/multi_update.test:
  Testcase for BUG#5837
sql/table.h:
  Added comments
2004-12-11 15:51:52 +03:00
unknown
9286d1c145 Prevent adding 'CREATE TABLE .. SELECT' query to the binary log when the
insertion of new records partially failed. It would get logged because of the
logic to log a partially-failed 'INSERT ... SELECT' (which can't be rolled back
in non-transactional tables), but 'CREATE TABLE ... SELECT' is always rolled
back on failure, even for non-transactional tables. (Bug #6682)
(Original fix reimplemented after review by Serg and Guilhem.)


mysql-test/t/insert_select.test:
  Add test case for Bug #6682
mysql-test/r/insert_select.result:
  Add results for test case for Bug #6682
sql/sql_table.cc:
  moved tmp_disable_binlog() and reenable_binlog macros to sql/sql_class.h
sql/sql_insert.cc:
  disable binlog during call to super's ::send_error in select_create class
sql/sql_class.h:
  add select_create::send_error()
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-12-03 00:05:11 +01:00
unknown
a845e882fd A fix (bug #6878: Crash with engine=memory).
heap/hp_open.c:
  A fix (bug #6878: Crash with engine=memory).
  Record length should be >= sizeof(byte*).
2004-12-02 14:34:53 +04:00
unknown
352ad8156c two-line fix for BUG#6732 "FLUSH TABLES WITH READ LOCK + COMMIT makes next FLUSH...LOCK hang forever"
(originally reported as "second run of innobackup hangs forever and can even hang server").
Plus testcase for the bugfix and comments about global read locks.


mysql-test/r/flush_block_commit.result:
  result update
mysql-test/t/flush_block_commit.test:
  testing bugfix (originally: second run of innobackup hangs)
sql/lock.cc:
  When we are in start_waiting_global_read_lock(), if we ourselves have
  the global read lock, there is nothing to start. This makes a pair with how 
  wait_if_global_read_lock() behaves when we ourselves have the global read lock.
  Previously, start_waiting_global_read_lock() decremented protect... whereas wait_if_global_read_lock()
  hadn't incremented it => very wrong => hangs.
  Descriptive comments on how global read lock works.
2004-11-30 22:20:52 +01:00
unknown
60af920628 Fixes while reviewing code
(Cleanups and better bug fixes)


mysql-test/r/select.result:
  Fixed test after wrong merge
mysql-test/t/select.test:
  Fixed test after wrong merge
scripts/mysql_fix_privilege_tables.sh:
  Don't read defaults files
sql/item_cmpfunc.cc:
  Fix wrong value for not_null_tables_cache
sql/item_cmpfunc.h:
  Remove wrong patch (flags are set in fix_length_and_dec())
sql/item_func.h:
  Fix wrong value for not_null_tables_cache
sql/slave.cc:
  Fixed indentation
2004-11-26 02:31:22 +02:00
unknown
fecd27a106 Merge mysql.com:/home/timka/mysql/src/4.0-virgin
into mysql.com:/home/timka/mysql/src/4.0-master


BitKeeper/etc/logging_ok:
  auto-union
2004-11-25 13:25:35 +02:00
unknown
0dcb55f470 Merge for BUG#3759 which was missing from the main tree for some reason.
BitKeeper/etc/logging_ok:
  auto-union
sql/item_cmpfunc.h:
  Auto merged
mysql-test/r/select.result:
  Merge for BUG#3759
mysql-test/t/select.test:
  Merge for BUG#3759
2004-11-25 11:37:28 +02:00
unknown
467c481479 Merge mysql.com:/space/bkroot/mysql-4.0
into mysql.com:/space/bk/b6148-mysql-4.0


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-11-25 09:38:52 +01:00
unknown
6f2cf12aa6 Fix for Bug#6148. Only rewind read position in binary log when the
slave SQL thread is started.


sql/slave.cc:
  Adding threads to init as parameter to init_master_info.
  Only rewind read position when starting SQL thread.
sql/slave.h:
  Adding threads to init as parameter to init_master_info.
  Only rewind read position when starting SQL thread.
sql/sql_repl.cc:
  Adding threads to init as parameter to init_master_info.
  Only rewind read position when starting SQL thread.
sql/repl_failsafe.cc:
  Adding threads to init as parameter to init_master_info.
  Only rewind read position when starting SQL thread.
2004-11-25 09:26:45 +01:00
unknown
e65956d067 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-11-22 18:47:23 +01:00
unknown
2934e7ebe6 ft_boolean_search.c:
bug#6705 - (+trunc1* +trunc2*)
fulltext.test, fulltext.result:
  bug#6705


mysql-test/r/fulltext.result:
  bug#6705
mysql-test/t/fulltext.test:
  bug#6705
myisam/ft_boolean_search.c:
  bug#6705 - (+trunc1* +trunc2*)
2004-11-22 18:37:30 +01:00
unknown
801a2fa308 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg6439
2004-11-19 17:54:14 +03:00
unknown
835e0159b6 test for bug#5528 2004-11-17 13:38:35 +01:00
unknown
e1509cf781 Proposed fix for bug #6439 "from_unixtime() function returns wrong datetime
values for too big argument".

Added range checking for from_unixtime() argument, cleaned up code 
a bit.


mysql-test/r/func_time.result:
  Test for bug #6439 "from_unixtime() function returns wrong datetime 
  values for too big argument".
mysql-test/t/func_time.test:
  Test for bug #6439 "from_unixtime() function returns wrong datetime 
  values for too big argument".
sql/item_timefunc.cc:
  Item_func_from_unixtime: 
    Added error range checking for function argument + small code clean up.
2004-11-15 16:11:13 +03:00
unknown
5cc756f6b9 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.0
into gw.mysql.r18.ru:/usr/home/ram/work/4.0.b6564
2004-11-12 12:38:07 +04:00
unknown
b19eb67f08 Bug#6123 - GRANT USAGE creates useless mysql.db row
Prevent creation of a row which grants no rights
  Test included


mysql-test/r/grant.result:
  Test for Bug#6123
mysql-test/t/grant.test:
  Test for Bug#6123
sql/sql_acl.cc:
  Bug#6123
    Prevent creation of useless row
2004-11-11 20:59:03 +00:00