Commit graph

3744 commits

Author SHA1 Message Date
unknown
7ea1621207 Fix and testcase for BUG#6699
myisam/mi_rnext_same.c:
  Fix for BUG#6699: 
    MERGE handler now uses mi_rnext_same() with priority queue, so skip record unpacking if buf==NULL
myisammrg/myrg_rnext_same.c:
  Fix for BUG#6699: 
   make myrg_rnext_same sort always sort records and return them in key order.
mysql-test/r/merge.result:
  Test for BUG#6699
mysql-test/t/merge.test:
  Test for BUG#6699
2004-11-29 06:51:30 +03:00
unknown
6f2e694df0 Added better test for Bug #6794 Wrong outcome of update operation of ndb table 2004-11-28 22:33:01 +01:00
unknown
f0af808fcc Fix for Bug #6794 Wrong outcome of update operation of ndb table 2004-11-28 22:28:36 +01:00
unknown
1b898a2246 post-merge fix 2004-11-28 19:48:41 +01:00
unknown
dd33501f9e merged
BitKeeper/etc/logging_ok:
  auto-union
innobase/srv/srv0srv.c:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/slave.cc:
  Auto merged
2004-11-28 18:19:01 +01:00
unknown
5607539c5b bad merge fixed 2004-11-28 17:06:40 +01:00
unknown
323284d5cd Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-11-28 16:32:01 +01:00
unknown
1a7783e0f6 skip last compress test if we're short of RAM 2004-11-28 16:31:14 +01:00
unknown
68ec649b9f Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-26 10:49:14 +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
8127cea512 init values to avoid junk returning in case of null value asking without assigning value (BUG#6806)
mysql-test/r/subselect.result:
   Equal operation under row and empty subquery
mysql-test/t/subselect.test:
   Equal operation under row and empty subquery
sql/item.h:
  init values to avoid junk returning in case of null value asking without assigning value
2004-11-25 22:54:49 +02:00
unknown
32f93da093 Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/space/bkroot/mysql-4.1
2004-11-25 13:35:53 +01: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
c4dbf1e969 Merge
BitKeeper/etc/logging_ok:
  auto-union
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/repl_failsafe.cc:
  Merging 4.0 and 4.1 changes.
2004-11-25 12:23:41 +01: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
2b4400e22d Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-11-24 23:47:14 +01:00
unknown
6429a0c598 bug#6784
mi_flush_bulk_insert (on dup key error in mi_write)
was mangling info->dupp_key_pos
2004-11-24 23:16:16 +01:00
unknown
03cba628f6 Bug#6787 LIKE not working properly with _ and utf8 data 2004-11-24 20:09:54 +04:00
unknown
f57d5412e4 merged
BitKeeper/etc/logging_ok:
  auto-union
Docs/Support/texi2html:
  Auto merged
client/mysqltest.c:
  Auto merged
myisam/ft_boolean_search.c:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/rpl000015.result:
  Auto merged
mysql-test/r/rpl_log_pos.result:
  Auto merged
mysql-test/r/rpl_rotate_logs.result:
  Auto merged
mysql-test/t/fulltext.test:
  Auto merged
mysql-test/t/rpl000001.test:
  Auto merged
mysql-test/t/rpl000015.test:
  Auto merged
mysql-test/t/rpl_log_pos.test:
  Auto merged
mysql-test/t/rpl_rotate_logs.test:
  Auto merged
2004-11-22 20:15:48 +01:00
unknown
1dc1ad9c9a Bug#6252 - Duplicate columns in keys should fail
Added check for duplicate column in key
  Added tests and fixed tests which exploit bug


mysql-test/r/delete.result:
  Fix test as it exploited Bug#6252
mysql-test/r/innodb.result:
  Test for Bug#6126
mysql-test/r/key.result:
  Test for Bug#6126/6252
mysql-test/r/type_blob.result:
  Fix test as it exploited Bug#6252
mysql-test/t/delete.test:
  Fix test as it exploited Bug#6252
mysql-test/t/innodb.test:
  Test for Bug#6126
mysql-test/t/key.test:
  Test for Bug#6126/6252
mysql-test/t/type_blob.test:
  Fix test as it exploited Bug#6252
sql/sql_table.cc:
  Bug#6252 - Duplicate columns in keys should fail
    Added check for duplicate column.
2004-11-22 18:07:04 +00: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
c8a30eb0c6 Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-11-22 14:55:20 +01:00
unknown
01604355ac Bug #6748 heap_rfirst() doesn't work (and never did!)
range for BETWEEN typo fixed


extra/perror.c:
  meaningless error message fixed
heap/hp_rfirst.c:
  Bug #6748 heap_rfirst() doesn't work (and never did!)
mysql-test/r/heap.result:
  Bug #6748 heap_rfirst() doesn't work (and never did!)
mysql-test/r/range.result:
  range for BETWEEN typo fixed
mysql-test/t/heap.test:
  Bug #6748 heap_rfirst() doesn't work (and never did!)
sql/handler.cc:
  Bug #6748 heap_rfirst() doesn't work (and never did!)
sql/sql_select.cc:
  range for BETWEEN typo fixed
2004-11-22 14:53:18 +01:00
unknown
2b04b042cd Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
2004-11-22 13:58:50 +01:00
unknown
bbbfd3e297 Added NULL value tests for UNIQUE index 2004-11-22 13:58:11 +01:00
unknown
9639bc214f Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6462
2004-11-22 14:21:49 +03:00
unknown
e112166f00 Backport of fix making myisam test results repeatable 2004-11-22 14:17:04 +03:00
unknown
6c81b518c0 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
2004-11-22 12:02:32 +01:00
unknown
f72b5978c4 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6462


sql/set_var.cc:
  Auto merged
2004-11-22 13:06:31 +03:00
unknown
4389be7557 Fix for bug #6462 "Same request on same data returns different
results." a.k.a. "Proper cleanup of subqueries is missing for SET and DO
statements". (Version #2 with after-review fixes).

To perform proper cleanup for statements that can contain subqueries 
but don't have main select we must call free_undelaid_joins().


mysql-test/r/subselect.result:
  Added test for bug #6462 "Same request on same data returns different
  results." a.k.a. "Proper cleanup of subqueries is missing for SET and DO
  statements".
mysql-test/t/subselect.test:
  Added test for bug #6462 "Same request on same data returns different
  results." a.k.a. "Proper cleanup of subqueries is missing for SET and DO
  statements".
sql/set_var.cc:
  Added missing cleanup of joins used in subqueries to SET statement.
sql/sql_do.cc:
  Added missing cleanup of joins used in subqueries to DO statement.
2004-11-22 13:05:10 +03:00
unknown
5672598f0a Added checks for NOT NULL for all fields in UNIQUE INDEX (USING HASH) 2004-11-22 10:35:03 +01:00
unknown
6d6b38c27f Bug #6737: REGEXP gives wrong result with case sensitive collation:
- A new flag MY_CS_CSSORT was introduced for case sensitivity.
- Item_func_regexp doesn't substiture ICASE not only
  for binary collations but for case sensitive collations as well.
2004-11-22 11:58:40 +04:00
unknown
3507a52e60 A fix and test case for Bug#6297 "prepared statement, wrong handling
of <parameter> IS NULL":
we must not only set Item::null_value in Item_param, but implement
Item_param::is_null() to work well with IS NULL/IS NOT NULL clauses.


mysql-test/r/ps.result:
  Test case for Bug#6297: test results fixed.
mysql-test/t/ps.test:
  A test case for Bug#6297 "prepared statement, wrong handling of 
  <parameter> IS NULL"
sql/item.h:
  A fix for Bug#6297: we must not only set null_value in Item_param, but
  also implement Item_param::is_null() to work well with  IS NULL/
  IS NOT NULL.
  Item::is_null() commented.
2004-11-21 12:04:27 +03:00
unknown
a3740c887e Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6266
2004-11-19 21:51:37 +03:00
unknown
79997ff7bd Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6439
2004-11-19 21:38:51 +03:00
unknown
7c0504ad17 Manual merge of fix for bug #6439 "from_unixtime() function returns
wrong datetime values for too big argument" from 4.0 tree to 4.1 tree.


mysql-test/r/func_time.result:
  Manual merge
mysql-test/t/func_time.test:
  Manual merge
sql/item_timefunc.cc:
  Manual merge
2004-11-19 19:19:45 +03:00
unknown
42fb593782 func_str.result:
This test was moved into func_group.


mysql-test/r/func_str.result:
  This test was moved into func_group.
2004-11-19 19:35:37 +04:00
unknown
7368b14719 Manual merge of fix for bug #6266 "Invalid DATETIME value is not handled
properly" with main tree.


libmysql/libmysql.c:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/field.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
tests/client_test.c:
  Manual merge.
2004-11-19 18:35:36 +03:00
unknown
aa6785d7a8 Bug #6658 MAX(column) returns incorrect coercibility
Also, Item_sum_hybrid->charset was removed as redundant,
and switched to use collation.collation instead.


mysql-test/r/func_group.result:
  Bug #6658 MAX(column) returns incorrect coercibility
mysql-test/r/func_str.result:
  Bug #6658 MAX(column) returns incorrect coercibility
mysql-test/t/func_group.test:
  Bug #6658 MAX(column) returns incorrect coercibility
sql/item_func.cc:
  Bug #6658 MAX(column) returns incorrect coercibility
sql/item_sum.cc:
  Bug #6658 MAX(column) returns incorrect coercibility
sql/item_sum.h:
  Bug #6658 MAX(column) returns incorrect coercibility
2004-11-19 19:35:36 +04: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
9e9715963a Reuse ctype_common.inc instead of retyping
the same queries.
2004-11-19 14:33:55 +04:00
unknown
e136b46250 Incorrect response with partial utf8 index
strings/ctype-mb.c:
  Incorrect response with partial utf8 index:
  Fill the max string with max_sort_char up to res_length bytes.
strings/ctype-uca.c:
  Incorrect response with partial utf8 index.
  Typo fixes for UTF8 collations.
2004-11-19 14:25:25 +04:00
unknown
bd51cf30d2 ndb_grant.result, ndb_grant.test:
new file
2004-11-19 09:17:36 +00:00
unknown
2e0b0ea0bf Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-19 08:38:20 +01:00
unknown
9438c2ca76 reporting empty result added in case of max/min optimisation of ALL/ANY/SOME subqueries
fixed null processing in NOT operation used in ALL subquery (Bug #6247)


mysql-test/r/subselect.result:
  new tests of ALL/ANY wiews
mysql-test/t/subselect.test:
  new tests of ALL/ANY wiews
sql/item_cmpfunc.cc:
  fixed special NOT ALL processing
  fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
sql/item_cmpfunc.h:
  fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
sql/item_subselect.cc:
  reporting empty result added for max/min subqueries
sql/item_subselect.h:
  reporting empty result added for max/min subqueries
sql/item_sum.cc:
  reporting empty result added fox max/min aggregate functions
sql/item_sum.h:
  reporting empty result added fox max/min aggregate functions
sql/sql_class.cc:
  reporting empty result added for max/min subqueries
sql/sql_parse.cc:
  reporting empty result added for max/min subqueries
sql/sql_union.cc:
  reporting empty result added for max/min subqueries
2004-11-18 18:10:07 +02:00
unknown
29d84f73de Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1


sql/ha_ndbcluster.cc:
  Auto merged
2004-11-18 15:55:18 +01:00
unknown
8453693a05 Check that the third UNION part with COLLATE
clause resolves collation conflict for the
first and the second parts pair.
2004-11-18 16:15:48 +04:00
unknown
be5b6f4d4b Fix for bug#4312 ndb table, wrong behaviour on insert .. on duplicate key .. 2004-11-18 12:11:56 +01:00
unknown
6f9fd8a5a3 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-18 10:01:18 +01:00
unknown
6ce9ed784e Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-11-17 17:54:15 +01:00
unknown
d1e4a1f171 time independent test
mysql-test/r/ctype_ucs.result:
  result update
mysql-test/t/ctype_ucs.test:
  time independent
2004-11-17 17:06:24 +01:00
unknown
ab51882b77 Fixes for compilation errors in Windows (casts from uint32* to uint*) in repl and charset code.
Moving the part of user_var.test using UCS2 to ctype_ucs.test


mysql-test/r/ctype_ucs.result:
  result update
mysql-test/r/user_var.result:
  result update
mysql-test/t/ctype_ucs.test:
  importing test piece from user_var.test
mysql-test/t/user_var.test:
  using UCS2 in this test fails on non-USC2-capable binaries, so let's move this piece to ctype_ucs.test.
sql/slave.cc:
  changing arg type to uint32* (as what is used in this arg is &thd->db_length which is uint32*)
sql/slave.h:
  changing arg type to uint32*
sql/sql_parse.cc:
  changing arg types to uint32, as what is used in these args is a create_field::length which is uint32.
2004-11-17 16:41:30 +01:00
unknown
71da21b2e9 merged
sql/ha_innodb.cc:
  Auto merged
2004-11-17 15:28:37 +01:00
unknown
835e0159b6 test for bug#5528 2004-11-17 13:38:35 +01:00
unknown
aeb527a750 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-17 10:40:50 +01:00
unknown
dcd6e3d070 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-global-4.1
2004-11-17 10:59:04 +02:00
unknown
3a301ac1f8 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1
2004-11-16 15:07:49 -08:00
unknown
0033fa4be8 Merge rurik.mysql.com:/home/igor/mysql-4.1
into rurik.mysql.com:/home/igor/dev/mysql-4.1-0
2004-11-16 14:01:40 -08:00
unknown
2094d80b48 key_cache.result, key_cache.test:
Added a test case for bug #6447.
mf_keycache.c:
  Fixed bug #6447. Erronious code in the key_cache_read function
  caused problems when reading key blocks with offset>0 into
  key cache. The code of key_cache_insert and key_cache_write
  was modified similarly.


mysys/mf_keycache.c:
  Fixed bug #6447. Erronious code in the key_cache_read function
  caused problems when reading key blocks with offset>0 into
  key cache. The code of key_cache_insert and key_cache_write
  was modified similarly.
mysql-test/t/key_cache.test:
  Added a test case for bug #6447.
mysql-test/r/key_cache.result:
  Added a test case for bug #6447.
2004-11-16 13:58:49 -08:00
unknown
70ed3160d9 backport Serg's fix of FT interface (BUG#6523)
mysql-test/r/subselect.result:
  subqueries with full text search
mysql-test/t/subselect.test:
  subqueries with full text search
sql/ha_myisam.h:
  backport Serg's fix of FT interface
sql/handler.h:
  backport Serg's fix of FT interface
sql/opt_range.h:
  backport Serg's fix of FT interface
sql/sql_select.cc:
  comment for previous patch
2004-11-16 22:58:02 +02:00
unknown
f2db7d57f5 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-heap-bug


heap/hp_hash.c:
  Auto merged
mysql-test/r/heap.result:
  Auto merged
sql/ha_heap.cc:
  Auto merged
2004-11-16 21:36:31 +03:00
unknown
a4c18f97e9 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-16 14:56:26 +01:00
unknown
0f9f2b02c1 A fix (bug #6449: DO server-crashing bug).
sql/sql_yacc.yy:
  A fix (bug #6449: DO server-crashing bug).
  expr_list is used for DO command.
2004-11-16 14:36:25 +04:00
unknown
2197ee5232 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-16 11:25:05 +01:00
unknown
b670ccac13 Bug #6552 CHAR column w/o length is legal, BINARY w/o length is not 2004-11-16 12:05:13 +04:00
unknown
dd93baa00d fixed joincleunup to avoid double deletin tables, and too earlyfull cleanup in case of EXPLAIN
fixed cleunup of TMP_TABLE_PARAM
(BUG#6406)


mysql-test/r/subselect.result:
  primary query with temporary table and subquery with groupping
mysql-test/t/subselect.test:
  primary query with temporary table and subquery with groupping
sql/sql_class.h:
  fixed cleunup of TMP_TABLE_PARAM
sql/sql_select.cc:
  uncacheable test made simplier
  fixed joincleunup to avoid double deletin tables, and too earlyfull cleanup in case of EXPLAIN
2004-11-16 00:16:04 +02:00
unknown
04ea9a97f8 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-15 22:42:53 +01:00
unknown
b478635110 Bug#6608: MySQL server crash in some query with tis620 character set.
The bug was that the function allocates 'a', then changes the value
of 'a' with the operator ++, and then tries to free 'a'!
2004-11-15 21:26:16 +04:00
unknown
58f984add2 BUG#6353 V2:
Replication using replicate-rewrite-db did not work for LOAD DATA INFILE.
Now is does.  There was one place in the code that used current database 
instead of the rewrite database.


mysql-test/r/rpl_rewrite_db.result:
  New tests
mysql-test/t/rpl_rewrite_db-slave.opt:
  New tests
mysql-test/t/rpl_rewrite_db.test:
  New tests
sql/log_event.cc:
  Added db to set_fields function so that current db is used.
sql/log_event.h:
  Added db to set_fields function so that current db is used.
2004-11-15 17:03:54 +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
5d9f7edd6d Fix for bug #6266 "Invalid DATETIME value is not handled properly".
In server we assume that datetime values stored in MYSQL_TIME struct
are normalized (and year is not greater than 9999), so we should 
perform range checks in all places then we convert something to
MYSQL_TIME. 


include/my_time.h:
  Added one more argument to set_zero_time() function to make it more 
  convinient.
  Added comment clarifying why MAX_DATE_STRING_REP_LENGTH value is 30.
include/mysql_time.h:
  Documented MySQL's internal assumptions for members of MYSQL_TIME
  structure.
libmysql/libmysql.c:
  It does not make sense to set MYSQL_TIME::time_type twice in case of 
  errors.
mysql-test/r/type_datetime.result:
  Added test for bug #6266 "Invalid DATETIME value not handled properly".
mysql-test/t/type_datetime.test:
  Added test for bug #6266 "Invalid DATETIME value not handled properly".
sql-common/my_time.c:
  str_to_datetime(): Added missing check for too big year values.
  set_zero_time(): added time_type argument, since MYSQL_TIMESTAMP_NONE
    is not the value that we want in most cases.
sql/field.cc:
  Field_datetime::store_time():
    clarified why we don't perform any range checks here.
sql/item.cc:
  Item_param::set_time():
   Added comment describing this method and range checking for TIME
   values.
sql/sql_prepare.cc:
  Removed comments about range checking for TIME values in prepared 
  statements, which are no longer true.
  set_zero_time() has one more argument now.
tests/client_test.c:
  Added test for bug #6266 "Invalid DATETIME value not handled properly"
2004-11-15 15:44:29 +03:00
unknown
b685909d6a moved procedure list initialization (BUG#6517)
mysql-test/r/subselect.result:
  Subselect in non-select command just after connection
mysql-test/t/subselect.test:
  Subselect in non-select command just after connection
sql/sql_lex.cc:
  moved procedure initialization
sql/sql_parse.cc:
  moved procedure initialization
2004-11-15 14:37:40 +02:00
unknown
a2a35e962e Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src
2004-11-15 09:10:27 +01:00
unknown
75a4c71b67 Merge with 4.0 2004-11-12 20:38:58 +02:00
unknown
55ae2e7880 After merge fixes
client/mysqldump.c:
  Merge with 4.0 (and reordering of options)
client/mysqltest.c:
  Added DB as a user variable
myisam/mi_check.c:
  Trivial cleanup
mysql-test/r/grant.result:
  Move test to be in same order as in 4.0
mysql-test/r/mix_innodb_myisam_binlog.result:
  Updated results
mysql-test/r/ps_1general.result:
  Updated tests to work after privilege fixes
mysql-test/r/timezone3.result:
  Updated results to 4.1
mysql-test/t/ps_1general.test:
  Updated tests to work after privilege fixes
sql-common/my_time.c:
  Applied sub-second patch from 4.0
sql/sql_acl.cc:
  More debugging
2004-11-12 17:44:17 +02:00
unknown
44070705ea merge with 4.0
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-Makefile.am:
  Delete: Docs/Images/Makefile.am
Build-tools/Bootstrap:
  Auto merged
Docs/Makefile.am:
  Auto merged
configure.in:
  Auto merged
include/mysql.h:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
mysys/default.c:
  Auto merged
scripts/mysqld_safe.sh:
  Auto merged
sql/log.cc:
  Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
client/mysqldump.c:
  merge with 4.0
  (This only reorders options)
sql/ha_innodb.cc:
  merge with 4.0 (Keep original code)
sql/time.cc:
  Note that part of this patch is done in my_time.c
2004-11-12 11:17:53 +02: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
unknown
3a98b78318 Result of
WL#2225 Extend the test cases for PS + develop a basic test routine for PS
   The basic test routine 
       mysql-test/include/patchwork-check.inc
   Test cases for the the basic test routine 
       mysql-test/t/tool_test.test    
       mysql-test/r/tool_test.result

   Test cases for prepared statements with functions
       mysql-test/t/ps_12func.test
       mysql-test/r/ps_12func.result
   Some statements are set to comment, because of open bugs.

Fresh MySQL V4.1 and V5.0 souces produce in the moment (~11-Nov-2004) the
same result files.
2004-11-11 20:12:12 +01:00
unknown
baf1c89e3d A fix (bug #6564: QUOTE(NULL) returns NULL, not the string 'NULL') 2004-11-11 18:20:40 +04:00
unknown
3b3285b322 Merge
client/mysqldump.c:
  Auto merged
sql/handler.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/handler.h:
  SCCS merged
2004-11-10 18:02:00 +01:00
unknown
313ce62f70 WL#1596 "make mysqldump --master-data --single-transaction able to do online dump of InnoDB AND report reliable
binlog coordinates corresponding to the dump".
The good news is that now mysqldump can be used to get an online backup of InnoDB *which works for
point-in-time recovery and replication slave creation*. Formerly, mysqldump --master-data --single-transaction
used to call in fact mysqldump --master-data, so the dump was not an online dump (took big lock all time of dump).
The only lock which is now taken in this patch is at the beginning of the dump: mysqldump does:
FLUSH TABLES WITH READ LOCK; START TRANSACTION WITH CONSISTENT SNAPSHOT; SHOW MASTER STATUS; UNLOCK TABLES;
so the lock time is in fact the time FLUSH TABLES WITH READ LOCK takes to return (can be 0 or very long, if
a table is undergoing a huge update).
I have done some more minor changes listed in the paragraph of mysqldump.c.
WL#2237 "WITH CONSISTENT SNAPSHOT clause for START TRANSACTION":
it's a START TRANSACTION which additionally starts a consistent read on all
capable storage engine (i.e. InnoDB). So, can serve as a replacement for
BEGIN; SELECT * FROM some_innodb_table LIMIT 1; which starts a consistent read too. 


client/mysqldump.c:
  Main change: mysqldump --single-transaction --master-data is now able to, at the same time,
  take an online dump of InnoDB (using consistent read) AND get the binlog position corresponding to this dump
  (before, using the two options used to silently cancel --single-transaction).
  This uses the new START TRANSACTION WITH CONSISTENT SNAPSHOT syntax.
  Additional changes: 
  a) cleanup:
   - DBerror calls exit() so some code was unneeded
   - no need to call COMMIT at end, leave disconnection do the job
   - mysql_query_with_error_report()
  b) requirements I had heard from colleagues:
   - --master-data now requires an argument, to comment out ("--") the CHANGE MASTER or not
     (commenting had been asked for point-in-time recovery when replication is not necessary).
   - --first-slave is renamed to --lock-all-tables
  c) more sensible behaviours (has been discussed internally):
   - if used with --master-data, --flush-logs is probably intended to get a flush synchronous
     with the dump, not one random flush per dumped db.
   - disabled automatic reconnection as, at least, SQL_MODE would be lost (and also, depending
     on options, LOCK TABLES, BEGIN, FLUSH TABLES WITH READ LOCK).
include/mysqld_error.h:
  an error if START TRANSACTION WITH CONSISTENT SNAPSHOT is called and there is no consistent-read capable storage engine
  (idea ((C) PeterG) is that it's a bit like CREATE TABLE ENGINE=InnoDB when there is no support for InnoDB).
sql/handler.cc:
  new ha_start_consistent_snapshot(), which, inside an existing transaction, starts a consistent read
  (offers an alternative to SELECTing any InnoDB table). Does something only for InnoDB.
  Warning if no suitable engine supported.
sql/handler.h:
  declarations
sql/lex.h:
  symbols for lex
sql/share/czech/errmsg.txt:
  new message
sql/share/danish/errmsg.txt:
  new message
sql/share/dutch/errmsg.txt:
  new message
sql/share/english/errmsg.txt:
  new message
sql/share/estonian/errmsg.txt:
  new message
sql/share/french/errmsg.txt:
  new message
sql/share/german/errmsg.txt:
  new message
sql/share/greek/errmsg.txt:
  new message
sql/share/hungarian/errmsg.txt:
  new message
sql/share/italian/errmsg.txt:
  new message
sql/share/japanese/errmsg.txt:
  new message
sql/share/korean/errmsg.txt:
  new message
sql/share/norwegian-ny/errmsg.txt:
  new message
sql/share/norwegian/errmsg.txt:
  new message
sql/share/polish/errmsg.txt:
  new message
sql/share/portuguese/errmsg.txt:
  new message
sql/share/romanian/errmsg.txt:
  new message
sql/share/russian/errmsg.txt:
  new message
sql/share/serbian/errmsg.txt:
  new message
sql/share/slovak/errmsg.txt:
  new message
sql/share/spanish/errmsg.txt:
  new message
sql/share/swedish/errmsg.txt:
  new message
sql/share/ukrainian/errmsg.txt:
  new message
sql/sql_lex.h:
  new option in lex (transaction options)
sql/sql_parse.cc:
  warning comment (never make UNLOCK TABLES commit a transaction, please);
  support for starting consistent snapshot.
sql/sql_yacc.yy:
  new clause WITH CONSISTENT SNAPSHOT (syntax ok'd by PeterG) for START TRANSACTION.
2004-11-10 17:56:45 +01:00
unknown
97af0a0e8f Bug#6031 - To drop database you have to execute DROP DATABASE command twice.
DROP DATABASE failed because of file ext not in TYPELIB of known extensions.
  General solution - construct a TYPELIB at runtime instead of a static list.


mysql-test/r/ndb_basic.result:
  Bug#6031
    New test for bug
mysql-test/t/ndb_basic.test:
  Bug#6031
    New test for bug
sql/ha_ndbcluster.cc:
  Cosmetic fix
sql/handler.cc:
  Bug#6031
    New function - ha_known_exts()
    We can construct TYPELIB of known db file extensions.
sql/handler.h:
  Bug#6031
    New function - ha_known_exts()
sql/sql_db.cc:
  Bug#6031
    We use a constructed list of known extensions instead of a static list
2004-11-10 15:07:11 +00:00
unknown
c5e6941e75 1. When mixing NULL to a character string,
the result takes its charset/collation
attributes from the character string,
e.g.  SELECT func(NULL, _latin2'string')
now returns a latin2 result. This is
done by introducing a new derivation
(aka coercibility) level DERIVATION_IGNORABLE,
which is used with Item_null.
2. 'Pure' NULL is now BINARY(0), not CHAR(0).
I.e. NULL is now more typeless.


mysql-test/r/metadata.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/null.result:
  Testing mixing NULL with a character string with a number of functions.
mysql-test/r/ps_2myisam.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_3innodb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_4heap.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_5merge.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_6bdb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_7ndb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/t/null.test:
  Testing mixing NULL with a character string with a number of functions.
sql/item.cc:
  New derivation level.
sql/item.h:
  New derivation level.
2004-11-10 14:05:28 +04:00
unknown
1490901ecc Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1
2004-11-08 11:53:50 +01:00
unknown
1489c41711 Merge mysql.com:/home/jonas/src/new-fix
into mysql.com:/home/jonas/src/mysql-4.1


ndb/src/ndbapi/NdbOperationExec.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2004-11-08 11:26:34 +01:00
unknown
06cf873d8f alter_table.result, alter_table.test, field_conv.cc:
Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.


sql/field_conv.cc:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
mysql-test/t/alter_table.test:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
mysql-test/r/alter_table.result:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
2004-11-08 14:23:14 +04:00
unknown
7240a4d317 ndb: bug#6435
fix null handling in ha_ndbcluster when using ordered index


mysql-test/r/ndb_index_ordered.result:
  bug#6435
mysql-test/t/ndb_index_ordered.test:
  bug#6435
sql/ha_ndbcluster.cc:
  Fix null handling in ordered index code
2004-11-08 11:11:49 +01:00
unknown
3b38a854e0 ndb: bug#6451
1) fix so that missing blob tables don't prevent table from being
    dropped
2) decrease size of blob part if record length exceeds max length
3) add test case for table wo/ corresponding blob table
4) init scan counters when sending scan_tabreq


mysql-test/r/ndb_autodiscover.result:
  testcase for table wo/ corresponding blob tables
mysql-test/r/ndb_autodiscover2.result:
  testcase for table wo/ corresponding blob tables
mysql-test/t/ndb_autodiscover.test:
  testcase for table wo/ corresponding blob tables
mysql-test/t/ndb_autodiscover2.test:
  testcase for table wo/ corresponding blob tables
ndb/include/ndbapi/NdbDictionary.hpp:
  Add non-const get column
ndb/src/ndbapi/NdbDictionary.cpp:
  Add non-const get column
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Allow "partially" getTable, which enables dropping of tables
     that fails to create blob tables
ndb/src/ndbapi/NdbScanOperation.cpp:
  Init counter when sending SCAN_TABREQ
sql/ha_ndbcluster.cc:
  Make sure that blob don't have to big part size
2004-11-08 11:06:36 +01:00
unknown
bf14010d51 ctype_ujis.result, ctype_ujis.test, field.cc:
Bug#6345 Unexpected behaviour with partial indices


sql/field.cc:
  Bug#6345 Unexpected behaviour with partial indices
mysql-test/t/ctype_ujis.test:
  Bug#6345 Unexpected behaviour with partial indices
mysql-test/r/ctype_ujis.result:
  Bug#6345 Unexpected behaviour with partial indices
2004-11-08 13:15:01 +04:00
unknown
9bd7def369 join_outer.result, join_outer.test:
Added cases for bugs #6307 and #6460.
sql_select.cc:
  Fixed the problem of bug reports #6307 and #6460.
  The reported wrong result sets were due to the fact that
  the added call of the fix_fields method for the built
  AND condition that joined WHERE and ON conditions
  broke ON expression, as it removed extra AND levels
  in the built condition. 
  It looks like that no attributes of the built condition
  are needed, so we don't have to call fix_fields here.


sql/sql_select.cc:
  Fixed the problem of bug report #6307 and #6460.
  The reported wrong result sets were due to the fact that
  the added call of the fix_fields method for the built
  AND condition that joined WHERE and ON conditions
  broke ON expression. 
  It looks like that no attributes of the built condition
  are needed, so we don't have to call fix_fields here.
mysql-test/t/join_outer.test:
  Added cases for bugs #6307 and #6460.
mysql-test/r/join_outer.result:
  Added cases for bugs #6307 and #6460.
2004-11-05 22:15:24 -08:00
unknown
6608e22d9c user_var.result, user_var.test:
My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.


mysql-test/t/user_var.test:
  My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.
mysql-test/r/user_var.result:
  My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.
2004-11-05 14:07:12 +04:00
unknown
aee1e78aa1 As it is wrong and confusing to associate any
character set with NULL, @a should be latin2
after this query sequence:

   SET @a=_latin2'string';
   SET @a=NULL;

I.e. the second query should not change the charset
to the current default value, but should keep the
original value assigned during the first query.
In order to do it, we don't copy charset
from the argument if the argument is NULL
and the variable has previously been initialized.


mysql-test/r/ps_6bdb.result:
  t
mysql-test/r/ps_5merge.result:
  t
mysql-test/r/ps_3innodb.result:
  t
mysql-test/r/ps_7ndb.result:
  t
mysql-test/r/ps_4heap.result:
  t
mysql-test/r/ps_2myisam.result:
  t
sql/item_func.cc:
  t
2004-11-05 13:37:36 +04:00
unknown
d497334164 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
2004-11-05 08:52:44 +01:00
unknown
b38510ecd0 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1
2004-11-04 22:16:00 -08:00
unknown
8264d83dfa ps.result, ctype_ucs.result, ctype_ucs.test, ps.test:
Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.


mysql-test/t/ps.test:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/t/ctype_ucs.test:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/r/ctype_ucs.result:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/r/ps.result:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
2004-11-05 10:12:33 +04:00
unknown
62ded37e36 func_in.result, func_in.test:
Added a case for bug #6365.
item_cmpfunc.cc:
  Fixed bug #6365 : Server crashed when list of values
  in IN predicate contains NULL while the tested field is
  of the character type and not of the default set;
  e.g. when f in 'f IN (NULL,'aa') belongs to binary
  character set, while the default character set is latin1.


sql/item_cmpfunc.cc:
  Fixed bug #6365 : Server crash when list of values
  in IN predicate contains NULL while the tested field is
  of the character type of not of the default set
  e.g. when f in 'f IN (NULL,'aa') belongs to binary
  character set, while the default character set is latin1.
mysql-test/t/func_in.test:
  Added a case for bug #6365.
mysql-test/r/func_in.result:
  Added a case for bug #6365.
2004-11-04 20:39:52 -08:00
unknown
4a56b28461 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-11-04 19:19:51 +01:00
unknown
e30bd1e48d Fix for BUG##5714 "Insert into MyISAM table and select ... for update]":
the fact that the transaction log is empty does not mean we're not in a transaction
(it could be BEGIN; SELECT * FOR UPDATE FROM ibtable: then we don't want to commit now, even if
the statement is a MyISAM update).
With a testcase.


mysql-test/r/mix_innodb_myisam_binlog.result:
  result update
mysql-test/t/mix_innodb_myisam_binlog.test:
  test update for a new bug
sql/log.cc:
  The fact that the transaction log is empty does not mean we're not in a transaction
  (it could be BEGIN; SELECT * FOR UPDATE: then we don't want to commit now).
2004-11-04 19:19:23 +01:00
unknown
a941f1486f autocommit
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/t/fulltext.test:
  Auto merged
mysql-test/t/insert.test:
  Auto merged
mysql-test/t/type_float.test:
  Auto merged
2004-11-04 21:25:49 +05:00
unknown
80051fa3b6 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1


sql/ha_ndbcluster.cc:
  Auto merged
2004-11-04 10:43:52 +01:00
unknown
7fd0cc2d12 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b6331
2004-11-04 10:24:27 +04:00
unknown
d4a3d50170 field.cc, sql_mode.result, sql_mode.test:
"SHOW CREATE TABLE" mysql-4.0 and mysql-3.23 
  compatibiliry mode change:
  Check that a binary collation adds 'binary'
  suffix into a char() column definition in
  mysql40 and mysql2323 modes. This allows
  not to lose the column's case sensitivity
  when loading the dump in pre-4.1 servers.


mysql-test/t/sql_mode.test:
  "SHOW CREATE TABLE" mysql-4.0 and mysql-3.23 
  compatibiliry mode change:
mysql-test/r/sql_mode.result:
  "SHOW CREATE TABLE" mysql-4.0 and mysql-3.23 
  compatibiliry mode change:
  Check that a binary collation adds 'binary'
  suffix into a char() column definition in
  mysql40 and mysql2323 modes. This allows
  not to lose the column's case sensitivity
  when loading the dump in pre-4.1 servers.
sql/field.cc:
  "SHOW CREATE TABLE" mysql-4.0 and mysql-3.23 
  compatibiliry mode change:
  Check that a binary collation adds 'binary'
  suffix into a char() column definition in
  mysql40 and mysql2323 modes. This allows
  not to lose the column's case sensitivity
  when loading the dump in pre-4.1 servers.
2004-11-04 08:50:07 +04:00
unknown
64233859cd Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-clean
2004-11-03 22:44:51 +01:00
unknown
35ded49263 NDB blobs - try to handle insert-update-delete under autocommit=0
ndb/src/ndbapi/ndberror.c:
  826 error text
mysql-test/r/ndb_blob.result:
  result displayed error
mysql-test/t/ndb_blob.test:
  result displayed error
ndb/src/ndbapi/NdbBlob.cpp:
  update head+inline earlier
ndb/src/ndbapi/NdbOperationExec.cpp:
  blob IgnoreError bug
ndb/test/ndbapi/testBlobs.cpp:
  tried to set non-nullable to null, causing a complex abort case
ndb/src/ndbapi/NdbConnection.cpp:
  prepared ops CAN be left in complex abort
2004-11-03 20:21:56 +01:00
unknown
d259ba4006 Fix for bug #6387 "Queried timestamp values do not match the inserted
value if server runs in time zone with leap seconds".

Now in my_gmt_sec() function we take into account difference between
our target and estimation in seconds part.


mysql-test/Makefile.am:
  Added mysql-test/std_data/Moscow_leap reuired by new timezone3.test
  to source distribution.
sql/time.cc:
  my_gmt_sec():
   When comparing our target broken-down datetime t value and proper 
   representation of our estimation *l_time we should take into account
   that they could differ in second part if we have time zone leap seconds.
   
   Also added comments about some assumptions used in this function.
2004-11-03 17:59:03 +00:00
unknown
dc1e7edb7f Merge mysql.com:/home/bkroot/mysql-4.1
into mysql.com:/home/bk/b5551-4.1-v4
2004-11-03 18:24:44 +01:00
unknown
539e2130b0 Fix for bug#5551 (Version 4).
The idea of the fix is that the administrative statements 
OPTIMIZE TABLE, REPAIR TABLE and ANALYZE TABLE should not 
generate binlog errors if there is no errors on the master.


sql/sql_parse.cc:
  No binlog error generated
sql/sql_table.cc:
  Documentation
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-11-03 18:23:58 +01:00
unknown
9caa9f9cd3 Fix for bug#6398 update of primary key fails 2004-11-03 15:53:26 +01:00
unknown
0afed4c3eb opt_range.cc, range.result, range.test:
Bug #6045: Binary Comparison regression in MySQL 4.1
  Binary searches didn't use a case insensitive index, now they do.


mysql-test/t/range.test:
  Bug #6045: Binary Comparison regression in MySQL 4.1
  Binary searches didn't use a case insensitive index, now they do.
mysql-test/r/range.result:
  Bug #6045: Binary Comparison regression in MySQL 4.1
  Binary searches didn't use a case insensitive index, now they do.
sql/opt_range.cc:
  Bug #6045: Binary Comparison regression in MySQL 4.1
  Binary searches didn't use a case insensitive index, now they do.
2004-11-03 15:22:33 +04:00
unknown
505caa2879 Remove usage of !$ from mysql-tests
Added protocol::flush() for easier embedded-server code
Increase block allocation variables a bit as they where a bit too small for MySQL 4.1
Added option --silent to client_test


client/mysqltest.c:
  Removed compiler warning
  Fixed identation & comments from earlier push
  Renamed variable 'disable_abort_on_error' to 'abort_on_error'
  Ensure that '$mysql_errno' also with --ps-protocol
include/mysql_com.h:
  Removed special handling of net_flush for embedded server
mysql-test/r/mysqltest.result:
  Remove usage of !$ in tests
mysql-test/t/client_test.test:
  Use --silent
mysql-test/t/comments.test:
  Remove usage of !$ in tests
mysql-test/t/join_outer.test:
  Remove usage of !$ in tests
mysql-test/t/key.test:
  Remove usage of !$ in tests
mysql-test/t/mysqltest.test:
  Remove usage of !$ in tests
mysql-test/t/show_check.test:
  Remove usage of !$ in tests
mysql-test/t/temp_table.test:
  Remove usage of !$ in tests
mysql-test/t/type_ranges.test:
  Remove usage of !$ in tests
sql/mysqld.cc:
  Increase block allocation variables a bit as they where a bit too small for MySQL 4.1
sql/net_serv.cc:
  Remove special usage of net_flush in embedded server
sql/protocol.cc:
  Added protocol::flush() for easier embedded-server code
sql/protocol.h:
  Added protocol::flush() for easier embedded-server code
sql/sql_prepare.cc:
  Added protocol::flush() for easier embedded-server code
  Remove one extra flush() for prepared statements
sql/sql_show.cc:
  Added protocol::flush() for easier embedded-server code
tests/client_test.c:
  Added option --silent
2004-11-02 20:13:27 +02:00
unknown
c940b515d4 A fix (bug #6331: INSERT IGNORE .. SELECT breaks subsequent inserts). 2004-11-02 19:48:37 +04:00
unknown
2ddf5682e1 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/M41/mysql-4.1
2004-11-02 16:25:48 +01:00
unknown
6b53505f60 Test expansion: "MOD" on non-integral first operand.
mysql-test/r/ps_10nestset.result:
  Result of expanded test: "MOD" on non-integral first operand.
mysql-test/t/ps_10nestset.test:
  Use the newly expanded "MOD" operator (non-integral first operand, bug#6138).
2004-11-02 15:09:57 +01:00
unknown
fc04692c8b Many files:
Allow mixing of different character sets for more SQL functions.
item_func.h:
  Allow mixing of different character sets for more SQL functions..


sql/item_cmpfunc.cc:
  Allow mixing of different character sets for more SQL functions.
sql/item_func.cc:
  Allow mixing of different character sets for more SQL functions.
sql/item_func.h:
  Allow mixing of different character sets for more SQL functions..
sql/item_strfunc.cc:
  Allow mixing of different character sets for more SQL functions.
sql/item.cc:
  Allow mixing of different character sets for more SQL functions.
sql/item.h:
  Allow mixing of different character sets for more SQL functions.
mysql-test/t/ctype_recoding.test:
  Allow mixing of different character sets for more SQL functions.
mysql-test/r/ctype_recoding.result:
  Allow mixing of different character sets for more SQL functions.
2004-11-02 16:02:12 +04:00
unknown
46aa022aa6 ctype_sjis.result, ctype_sjis.test, ctype-sjis.c:
Bug #6223 Japanese half-width kana characters get truncated. Bytes 0xA1..0xDF were not treated as a single byte sequence in a mistake.


strings/ctype-sjis.c:
  Bug #6223 Japanese half-width kana characters get truncated. Bytes 0xA1..0xDF were not treated as a single byte sequence in a mistake.
mysql-test/t/ctype_sjis.test:
  Bug #6223 Japanese half-width kana characters get truncated. Bytes 0xA1..0xDF were not treated as a single byte sequence in a mistake.
mysql-test/r/ctype_sjis.result:
  Bug #6223 Japanese half-width kana characters get truncated. Bytes 0xA1..0xDF were not treated as a single byte sequence in a mistake.
2004-11-02 09:00:46 +04:00
unknown
62f23cadd8 Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/space/pekka/ndb/version/my41
2004-11-01 15:43:54 +01:00
unknown
934c8966f0 Merge mleich@bk-internal.mysql.com:/home/bk/mysql-4.1
into three.local.lan:/home/matthias/Arbeit/mysql-4.1/src


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-11-01 10:51:43 +01:00
unknown
b1b3a8b9b0 Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/space/pekka/ndb/version/my41


ndb/include/ndbapi/NdbBlob.hpp:
  Auto merged
2004-10-31 15:44:35 +01:00
unknown
e4f0614cf4 NDB bug-6018 support writeTuple with blobs
mysql-test/r/ndb_blob.result:
  bug-6018
mysql-test/t/ndb_blob.test:
  bug-6018
ndb/include/ndbapi/NdbBlob.hpp:
  bug-6018
ndb/include/ndbapi/NdbConnection.hpp:
  bug-6018
ndb/include/ndbapi/NdbIndexOperation.hpp:
  bug-6018
ndb/include/ndbapi/NdbOperation.hpp:
  bug-6018
ndb/src/ndbapi/NdbBlob.cpp:
  bug-6018
ndb/src/ndbapi/NdbConnection.cpp:
  bug-6018
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  bug-6018
ndb/src/ndbapi/NdbIndexOperation.cpp:
  bug-6018
ndb/src/ndbapi/NdbOperation.cpp:
  bug-6018
ndb/src/ndbapi/NdbOperationExec.cpp:
  bug-6018
ndb/test/ndbapi/testBlobs.cpp:
  bug-6018
2004-10-31 15:33:56 +01:00
unknown
d46c7366eb Enable REPLACE ... SELECT in prepared statements.
mysql-test/include/ps_modify.inc:
  replace ... select now works.
mysql-test/r/ps_2myisam.result:
  replace ... select now works.
mysql-test/r/ps_3innodb.result:
  replace ... select now works.
mysql-test/r/ps_4heap.result:
  replace ... select now works.
mysql-test/r/ps_5merge.result:
  replace ... select now works.
mysql-test/r/ps_6bdb.result:
  replace ... select now works.
mysql-test/r/ps_7ndb.result:
  replace ... select now works.
mysql-test/t/ps_7ndb.test:
  replace ... select now works.
sql/sql_prepare.cc:
  Enable SQLCOM_REPLACE_SELECT: no need for any code changes but
  enable this SQLCOM in the switch.
2004-10-30 17:17:52 +04:00
unknown
6ca39e9603 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
2004-10-29 14:38:33 +00:00
unknown
a2a9da4f01 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
2004-10-29 14:06:57 +00:00
unknown
c24a628086 These modifications are the result of
WL#2067 add features to mysqltest: "disable_error_abort" + "$mysql_errno"

$mysql_errno is a new builtin variable of mysqltest and contains the
return code of the last command send to the server.

"--disable_abort_on_error" switches the abort of mysqltest
after "unmasked" failing statements off.
"--enable_abort_on_error" switches the abort of mysqltest
after "unmasked" failing statements on. (default)

"Maskings" are
    !$<error number>  and  --error <error number>
in the line before the statement to be checked.

The benefit of the option "--disable_abort_on_error" is that
- all statements after the failing statement are executed
- a r/<test>.reject will be produced
- it is possible to write test cases, which perform
  code sequences depending on the return code of a single
  statement


client/mysqltest.c:
  Implementation of the features
  - "--disable_abort_on_error"/"--enable_abort_on_error" switch
  - "$mysql_errno" variable
mysql-test/r/mysqltest.result:
  test cases for the features added
mysql-test/t/mysqltest.test:
  updated results
2004-10-29 14:51:56 +02:00
unknown
16ed686a93 Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1


mysql-test/r/fulltext.result:
  Auto merged
2004-10-29 14:31:20 +02:00
unknown
13ff3fa4b9 proper max_records estimation for sort-repair of fulltext indexes
mysql-test/t/ctype_utf8.test:
  bad merge fixed
2004-10-29 14:24:06 +02:00
unknown
a739f2d692 Allow to convert to non-Unicode charset when mixing a string
constant with a column. The string is converted into the column
character set. It conversion doesn't lose data, then operation
is possible. Otherwise, give an error, as it was earlier.


sql/item.h:
  Change bool argument to uint flags:
  we have now two different flags.
2004-10-29 16:00:03 +05:00
unknown
3b1b2aae45 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1-ndb
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1


ndb/include/ndbapi/ndbapi_limits.h:
  Auto merged
2004-10-29 10:24:56 +00:00
unknown
7223b9c1ec Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.6117
2004-10-29 09:32:32 +05:00
unknown
16f4f1b4ba Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-28 15:52:26 +00:00
unknown
9d07242b67 ndb_basic.result:
forgot to commit new result


mysql-test/r/ndb_basic.result:
  forgot to commit new result
2004-10-28 15:43:16 +00:00
unknown
bbebacbf13 Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-local
2004-10-28 11:26:19 +00:00
unknown
51cff67d08 added test for max limit of 128 attributes in table
new define for long signal section size
   bumbed up limit for attributes to 128
    use new define in SectionSegment
    some bug fixing of send fragmented signal +
    make chunk size a multiple the dew define for SectionSegment size


mysql-test/r/ndb_basic.result:
  added test for max limit of 128 attributes in table
mysql-test/t/ndb_basic.test:
  added test for max limit of 128 attributes in table
ndb/include/kernel/ndb_limits.h:
  new define for long signal section size
ndb/include/ndbapi/ndbapi_limits.h:
  bumbed up limit for attributes to 128
ndb/src/kernel/vm/LongSignal.hpp:
  use new define in SectionSegment
ndb/src/ndbapi/TransporterFacade.cpp:
  some bug fixing of send fragmented signal +
  make chunk size a multiple the dew define for SectionSegment size
2004-10-28 11:19:51 +00:00
unknown
5be6c328f5 Produce a "truncated" warning if a value cannot be converted
into the column character set on INSERT/UPDATE.


sql/sql_string.cc:
  New argument to report an error.
sql/sql_string.h:
  New argument to report an error.
2004-10-28 15:21:20 +05:00
unknown
de0e5012db Merge bk@192.168.21.1:/usr/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.6117
2004-10-28 11:38:59 +05:00
unknown
fbabd08534 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ps-4.1
2004-10-27 23:31:24 +03:00
unknown
a94c7639da Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ps-4.1
2004-10-27 21:17:31 +03:00
unknown
464da8f13a removed incorrect error message about aggregate functions
improved mechanisn of detection posibility to be NULL for single row queries
switched off substitution optimisation for single row subqueries in PS due to problem in resolving substituted expressions
(changes to make subselects test working with PS protocol)


mysql-test/r/subselect.result:
  removed incorrect error message about aggregate functions
  improved mechanisn of detection posibility to be NULL for single row queries
mysql-test/t/subselect.test:
  removed incorrect error message about aggregate functions
sql/item_subselect.cc:
  removed incorrect error message about aggregate functions
  switched off substitution optimisation for single row subqueries in PS due to problem in resolving substituted expressions
  improved mechanisn of detection posibility to be NULL for single row queries
sql/item_subselect.h:
  new method to help in NULL ability detection
2004-10-27 21:11:06 +03:00
unknown
e646f8f2d1 Merge with 4.0
BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
  Auto merged
innobase/include/trx0sys.h:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/trx/trx0purge.c:
  Auto merged
innobase/trx/trx0rseg.c:
  Auto merged
mysql-test/r/innodb-lock.result:
  Auto merged
mysql-test/t/innodb-lock.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/mysqld.cc:
  Use local version during merge
2004-10-27 19:52:41 +03:00
unknown
3bdd7e77fd Fix when compiling without InnoDB
BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
  Delete: mysql-test/t/innodb-lock-master.opt
2004-10-27 18:57:49 +03:00
unknown
55833fb49b after merge fix 2004-10-26 22:41:45 +02:00
unknown
dec8b3c3e7 merged
sql/field.cc:
  Auto merged
2004-10-26 21:12:14 +02:00
unknown
c882c26101 Bug #6019 - SELECT tries to use too short prefix index on utf8 data
Field_string::pack should respect max_length as Field_string::pack_key does
2004-10-26 20:31:41 +02:00
unknown
e160646eb0 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/t/ctype_utf8.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-10-26 19:30:57 +03:00
unknown
853c2c788c A lot of fixes for prepared statements (PS):
New mysqltest that can run mysqltest with PS
Added support for ZEROFILL in PS
Fixed crash when one called mysql_stmt_store_result() without a preceding mysql_stmt_bind_result()
Updated test cases to support --ps-protocol
(Some tests are still run using old protocol)
Fixed crash in PS when using SELECT * FROM t1 NATURAL JOIN t2...
Fixed crash in PS when using sub queries
Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
Fixed wrong permissions check in PS and multi-table updates (one could get permission denied for legal quries)
Fix for PS and SELECT ... PROCEDURE
Reset all warnings when executing a new PS query
group_concat(...ORDER BY) didn't work with PS
Fixed problem with test suite when not using innodb


BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
  Delete: mysql-test/t/innodb-lock-master.opt
client/Makefile.am:
  mysqltest now uses regex
client/mysqltest.c:
  Added support for testing of prepared statements (with --ps-protocol)
  Main code was done by Kent, I did mainly some cleanups and minor bug fixes
  New test commands:
  --disable_ps_protocol
  --enable_ps_protocol
  NOTE: new code still has some things that needs to be cleaned up.
  For example run_query_stmt_handle_error() should be made more general so that same code can be used also by 'normal' queries
configure.in:
  mysqltest now uses regex
libmysql/libmysql.c:
  Reset warning_count after prepare (safety). In the future we should also provide warnings on prepare
  integer -> string conversion now handles ZEROFILL
  double -> string conversion is now closer to the one in the server
  Fixed crash when one called mysql_stmt_store_result() without preceding mysql_stmt_bind_result()
libmysqld/examples/Makefile.am:
  mysqltest now uses regex
mysql-test/include/have_query_cache.inc:
  Fixes for --ps-protocol
mysql-test/include/ps_conv.inc:
  Fixes for --ps-protocol
mysql-test/mysql-test-run.sh:
  Added options --ps-protocol
mysql-test/r/ctype_utf8.result:
  Fixed test case
mysql-test/r/fulltext_cache.result:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/fulltext_left_join.result:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/fulltext_multi.result:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/innodb-lock.result:
  Fixed test to work even if Innodb is not compiled in.
mysql-test/t/create.test:
  Fixes for --ps-protocol
mysql-test/t/ctype_utf8.test:
  Remove warnings
mysql-test/t/date_formats.test:
  Fixes for --ps-protocol
mysql-test/t/fulltext_cache.test:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/fulltext_left_join.test:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/fulltext_multi.test:
  Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/func_group.test:
  Fixes for --ps-protocol
mysql-test/t/func_sapdb.test:
  Fixes for --ps-protocol
mysql-test/t/innodb-lock.test:
  Fixed test to work even if Innodb is not compiled in.
mysql-test/t/insert.test:
  Fixes for --ps-protocol
mysql-test/t/insert_select.test:
  Fixes for --ps-protocol
mysql-test/t/insert_update.test:
  Fixes for --ps-protocol
mysql-test/t/metadata.test:
  Fixes for --ps-protocol
mysql-test/t/multi_statement.test:
  Fixes for --ps-protocol
mysql-test/t/ps_1general.test:
  Fixes for --ps-protocol
mysql-test/t/rollback.test:
  Fixes for --ps-protocol
mysql-test/t/rpl_redirect.test:
  Fixes for --ps-protocol
mysql-test/t/rpl_user_variables.test:
  Fixes for --ps-protocol
mysql-test/t/select.test:
  Fixes for --ps-protocol
mysql-test/t/status.test:
  Fixes for --ps-protocol
mysql-test/t/type_blob.test:
  Fixes for --ps-protocol
mysql-test/t/type_float.test:
  Fixes for --ps-protocol
mysql-test/t/union.test:
  Fixes for --ps-protocol
mysql-test/t/warnings.test:
  Fixes for --ps-protocol
mysys/my_alloc.c:
  More debugging information
sql-common/client.c:
  More debugging information
sql-common/my_time.c:
  TIME didn't support full range with PS
sql/field.cc:
  TIME didn't support full range with PS
sql/item_cmpfunc.cc:
  IN(constants,...) didn't work with PS
sql/item_subselect.cc:
  Some subqueries didn't work with PS
sql/item_sum.cc:
  group_concat(...ORDER BY) didn't work with PS
  Removed variable warning_available as 'warning' can be used for this.
sql/item_sum.h:
  Removed not needed variable
sql/protocol.cc:
  TIME didn't support full range with PS
sql/set_var.cc:
  Style fix
sql/sql_base.cc:
  setup_wild() didn't properly restore old arena, which caused core dump in PS when using
  SELECT * FROM t1 NATURAL JOIN t2...
sql/sql_class.cc:
  Style fix
sql/sql_error.cc:
  Style fix
sql/sql_insert.cc:
  Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
sql/sql_lex.h:
  Fix for PS and procedures
sql/sql_parse.cc:
  More debugging information
  Make a copy of 'db' in PS as this may change
  Fixed wrong permissions check in PS and multi-table updates
sql/sql_prepare.cc:
  Fix for PS and SELECT ... PROCEDURE
  Reset all warnings when executing a new query
sql/sql_union.cc:
  Fixes for PS and SELECT ... PROCEDURE
  Reset 'with_wild' as 'wild' is resolved on prepare
2004-10-26 19:30:01 +03:00
unknown
e948154c8a Bug 6206: ENUMs are not case sensitive even if declared BINARY
The same problem with SET columns:

find_set() now executes find_type2() to do charset aware search,
instead of always using system_charset_info comparison.
2004-10-26 13:17:37 +05:00
unknown
1ff580febc Fix for bug #6166: index prefix length of 0 not rejected 2004-10-26 12:16:35 +04:00
unknown
dc734355e6 - Check ENUM/SET duplicate values taking in account charset/collation. 2004-10-26 10:41:14 +05:00
unknown
52da7eb858 Reuse more code: two equal pieces for ENUM and SET where moved
into a function.
2004-10-26 09:13:52 +05:00
unknown
712326d684 Bug#6202: ENUMs are not case sensitive even if declared BINARY 2004-10-25 17:51:26 +05:00
unknown
08c39dd283 Fixed wrong range test code for HEAP tables. This caused a crash when doing a range test with a key that didn't have lower or upper bound (Bug #6082)
More test cases



mysql-test/r/heap.result:
  Test for bug #6082 (delete with NOT NULL)
mysql-test/r/key.result:
  More tests for BUG#6151 - myisam index corruption
mysql-test/r/ps.result:
  Test of bug #6047 "Permission problem when executing mysql_stmt_execute with derived table"
mysql-test/t/heap.test:
  Test for bug #6082 (delete with NOT NULL)
mysql-test/t/key.test:
  More tests for BUG#6151 - myisam index corruption
mysql-test/t/ps.test:
  Test of bug #6047 "Permission problem when executing mysql_stmt_execute with derived table"
sql/ha_heap.cc:
  Fixed wrong range test code for HEAP tables. This caused a crash when doing a range test with a key that didn't have lower or upper bound
2004-10-23 03:30:27 +03:00
unknown
9c300fe66c test fixed 2004-10-22 23:23:02 +02:00
unknown
c6b5d24abf Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-bug6151
2004-10-22 22:34:59 +02:00
unknown
450b9a170d Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-bug6151
2004-10-22 21:07:09 +02:00
unknown
0798c99db1 Post merge fix (test results) 2004-10-22 23:05:48 +04:00
unknown
61c1dd02f3 Manual merge
mysql-test/r/ps.result:
  Manual merge.
2004-10-22 22:55:49 +04:00
unknown
9b5cf9464c A fix and test case for Bug#6088 "FOUND_ROWS returns wrong values for
prepared statements when LIMIT is used" and post-review comments.
The fix changes the approach we calculate the need for ORDER BY 
in UNION: the previous was not PS friendly, as it damaged SELECT_LEX 
options in case of single select.


mysql-test/r/ps.result:
  Test results fixed: the test case for Bug#6088
mysql-test/r/subselect.result:
  Test results fixed: now we don't perform ORDER BY for parts of UNION
  if there is no LIMIT clause.
mysql-test/t/ps.test:
  A test case for Bug#6088 "FOUND_ROWS returns wrong values for
   prepared statements when LIMIT is used".
sql/sql_union.cc:
  The actual fix for Bug#6088:
  - don't modify SELECT_LEX'es
  - use boolean variable can_skip_order_by to check if we can skip
    ORDER BY in UNION
2004-10-22 22:51:16 +04:00
unknown
2f8b0ab3a7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/item.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-10-22 19:51:04 +03:00
unknown
4ff9b60597 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-tzfix


sql/sql_parse.cc:
  Auto merged
2004-10-22 20:21:55 +04:00
unknown
bc6652db9b Fix compiler warnings (detected by Intel's C++ compiler)
Fixed checking of privilege handling in CREATE ... SELECT (Bug #6094)


client/mysql.cc:
  Fix compiler warnings
client/mysqltest.c:
  Fix wrong counting of lines
  Remove compiler warnings
heap/hp_hash.c:
  Fix compiler warnings
innobase/dict/dict0load.c:
  Fix compiler warnings
innobase/include/mem0mem.h:
  Fix compiler warnings
libmysql/client_settings.h:
  Fix compiler warnings
myisam/ft_nlq_search.c:
  Add comments about compiler warnings
myisam/rt_index.c:
  Add comments about compiler warnings
myisam/rt_mbr.c:
  Add comments about compiler warnings
mysql-test/r/ps.result:
  Test case for bug#6094
mysql-test/t/ps.test:
  Test case for bug#6094
mysys/hash.c:
  Fix compiler warnings
mysys/my_handler.c:
  Add comments about compiler warnings
mysys/my_thr_init.c:
  Add comments about compiler warnings
ndb/include/mgmapi/mgmapi.h:
  Fix compiler warnings
regex/main.c:
  Fix compiler warnings
sql/item.h:
  Fix compiler warnings
sql/item_func.h:
  Add comments about compiler warnings
sql/spatial.h:
  Add comments about compiler warnings
sql/sql_lex.h:
  Fix compiler warning
sql/sql_list.h:
  Fix compiler warning
sql/sql_parse.cc:
  Move testing of access rights of tables in CREATE ... SELECT to create_table_precheck() to fix privilege checking in CREATE ... SELECT
  (Bug #6094)
sql/sql_prepare.cc:
  Remove not needed empty line
sql/sql_string.h:
  Fix compiler warnings
strings/ctype-mb.c:
  Fix compiler warnings
2004-10-22 18:44:51 +03:00
unknown
7e38104cb4 Fix for bug #6117 (Centroid() crashes server)
I learned that one shouldn't use String::set in val_str() methods...


mysql-test/r/gis.result:
  Test result for #6117
mysql-test/t/gis.test:
  Test case #6117
sql/item_geofunc.cc:
  String::set doesn't work here
sql/spatial.cc:
  Error message isn't needed here
2004-10-22 20:32:02 +05:00
unknown
bb2c3ca995 Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-bug6151
2004-10-22 17:03:26 +02:00
unknown
ca8be36f3a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/media/sda1/mysql/mysql-4.1-6050


sql/sql_class.h:
  Auto merged
2004-10-22 15:59:58 +04:00
unknown
4512a46e65 A fix and test case for Bug#6050 "EXECUTE stmt reports ambiguous field
names with ident. tables fr. diff. schemata": revise all uses of
Item_field and make them prepared-statements friendly when necessary.


mysql-test/r/ps.result:
  Test results fixed: the test case for Bug#6050
mysql-test/r/ps_1general.result:
  Test results fixed: in prepared statements we expand '*' to a list
  of fully qualified fields (db.table.column).
mysql-test/t/ps.test:
  A test for Bug#6050 "EXECUTE stmt reports ambiguous fieldnames with 
  ident. tables fr. diff. schemata"
sql/item.cc:
  Revise all Item_field constructors: we need to make sure that no Item_field
  object points to unaccessible memory in prepared statements.
sql/item.h:
  Revise all Item_field constructors: we need to make sure that no Item_field
  object points to unaccessible memory in prepared statements.
sql/sql_base.cc:
  Item_field use changed to be prepared statements friendly.
sql/sql_class.h:
  New check of Item_arena state.
sql/sql_union.cc:
  Fixing the problem with name resolving in UNION and prepared statements:
  In case of SELECT a, b, c FROM t1 UNION SELECT a, b, c FROM t2 the list of
  selected items is represented as a List<Item_field>, where each 
  Item_field points to a field of temporary table.
  But the temporary table is created anew on each execution of the prepared 
  statement. So on each subsequent execution we should reset Item_field
  items to point to fields from freshly-created temporary table.
sql/table.h:
  Comment TABLE member.
2004-10-22 14:47:35 +04:00
unknown
06710a26fc Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-clean
2004-10-22 11:12:14 +02:00
unknown
d2bfd6766f mysqltest.c, mysqltest.result, mysqltest.test:
Added SQLSTATE matching support to test engine
mysqltest.result, mysqltest.test:
  new file


mysql-test/t/mysqltest.test:
  Added SQLSTATE matching support to test engine
mysql-test/r/mysqltest.result:
  Added SQLSTATE matching support to test engine
client/mysqltest.c:
  Added SQLSTATE matching support to test engine
2004-10-22 05:56:27 +02:00
unknown
e6e1600ec9 Check of temporary tables hiding for query fetched from QC (BUG#6084)
mysql-test/r/query_cache.result:
  hiding real table stored in query cache by temporary table
mysql-test/t/query_cache.test:
  hiding real table stored in query cache by temporary table
sql/sql_cache.cc:
  Check of temporary tables hiding for query fetched from QC
sql/sql_cache.h:
  Key length now stored in table record of query cache
2004-10-21 23:56:12 +03:00
unknown
5ce9e597e5 BUG#6151 - myisam index corruption.
Removed the assumption of a certain key order.
Since 4.1, keys are padded with blanks for comparison.
Hence, shorter keys sort behind longer keys, if the
data bytes have values below BLANK.


mysql-test/r/key.result:
  BUG#6151 - myisam index corruption.
  The test results.
mysql-test/t/key.test:
  BUG#6151 - myisam index corruption.
  Added the test case as derived from the original data.
2004-10-21 22:17:10 +02:00
unknown
8537cf2f4b Fix for bug #6116 "SET time_zone := ... requires access to
mysql.time_zone* tables".

We are excluding implicitly used time zone tables from privilege
checking.


mysql-test/r/timezone2.result:
  Added test for bug #6116 "SET time_zone := ... requires access to 
  mysql.time_zone tables"
mysql-test/t/timezone2.test:
  Added test for bug #6116 "SET time_zone := ... requires access to 
  mysql.time_zone tables"
sql/sql_parse.cc:
  check_table_access(): we should avoid privilege checking for implicitly
  used time zone tables.
sql/tztime.cc:
  Indicated dependancy between my_tz_get_table_list() function and
  my_tz_check_n_skip_implicit_tables() function.
sql/tztime.h:
  Added my_tz_check_n_skip_implicit_tables() function which allows easily
  determine whenever we have found beggining of the list of implicitly used
  time zone tables and fast-forward to its end.
2004-10-21 22:18:00 +04:00
unknown
48dc2f0844 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/M41/mysql-4.1
2004-10-21 17:57:48 +02:00
unknown
120afb8ea2 Merge mysql.com:/M41/mysql-4.1 into mysql.com:/M41/push-4.1 2004-10-21 17:47:05 +02:00
unknown
315b7d89eb A fix (bug #6138: MOD operator should not round non-integral argument). 2004-10-21 19:52:55 +05:00
unknown
97ccddddf5 Adapt 'ps_10nestset' to standard test style; correct a typing error in 'ps_11bugs'.
mysql-test/r/ps_10nestset.result:
  Correct the expected protocol according to the test changes.
mysql-test/t/ps_10nestset.test:
  Improve comments;  adapt to standard test style:
  disable warnings around 'drop table', use 't#' table name scheme.
mysql-test/t/ps_11bugs.test:
  Corrected a typing error in the bug number comment.
2004-10-21 16:02:12 +02:00
unknown
154a5c173d ctype_uca.result:
Forgot to commit in the previous changeset


mysql-test/r/ctype_uca.result:
  Forgot to commit in the previous changeset
2004-10-21 14:54:17 +05:00
unknown
8f82360081 Allow cp932 characters to be stored in a SJIS column 2004-10-21 12:17:59 +05:00
unknown
ffd77c4679 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-20 17:31:59 +00:00
unknown
44db341fdb fix so that ndb handler can cope with char(0), mapped to char(1) for now 2004-10-20 17:22:58 +00:00
unknown
10a6020ee0 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


libmysql/libmysql.c:
  Auto merged
2004-10-20 18:58:01 +03:00
unknown
4ba94cc3f9 After merge fixes 2004-10-20 17:28:40 +03:00
unknown
560d7bcdd0 Merge with 4.0
BitKeeper/etc/logging_ok:
  auto-union
Docs/Support/texi2html:
  Auto merged
innobase/trx/trx0rec.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/myisampack.c:
  Auto merged
mysql-test/t/innodb-lock.test:
  Auto merged
mysys/thr_lock.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/lock.cc:
  Auto merged
sql/sql_acl.cc:
  Keep old code
2004-10-20 16:24:28 +03:00
unknown
ec8779e95a Fix test case for innodb-lock
mysql-test/r/innodb-lock.result:
  Fix test case (old one didn't test things correctly)
mysql-test/t/innodb-lock.test:
  Fix test case (old one didn't test things correctly)
mysys/thr_lock.c:
  More debugging information
sql/mysqld.cc:
  Enable innodb_table_locks as default, as otherwise there is a possibility for deadlocks
sql/sql_base.cc:
  More debug information
2004-10-20 16:04:28 +03:00
unknown
1d3c05901a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-secfix


sql/mysql_priv.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-10-20 17:02:15 +04:00
unknown
b88150c96e Fix for bug #6173 "One can circumvent missing UPDATE privilege if
he has SELECT and INSERT privileges for table with primary key"

Now we set lex->duplicates= DUP_UPDATE right in parser if INSERT has
ON DUPLICATE KEY UPDATE clause, this simplifies insert_precheck()
function (this also fixes a bug) and some other code.


mysql-test/r/grant2.result:
  Added test for bug #6173 "One can circumvent missing UPDATE privilege if
  he has SELECT and INSERT privileges for table with primary key"
mysql-test/t/grant2.test:
  Added test for bug #6173 "One can circumvent missing UPDATE privilege if
  he has SELECT and INSERT privileges for table with primary key"
sql/mysql_priv.h:
  insert_precheck() don't need "update" parameter any longer since
  now we set lex->duplicates to DUP_UPDATE if INSERT has ON DUPLICATE
  KEY UPDATE clause.
sql/sql_parse.cc:
  insert_precheck() don't need "update" parameter any longer since
  now we set lex->duplicates to DUP_UPDATE if INSERT has ON DUPLICATE
  KEY UPDATE clause, so it can determine whenever it is needed to
  require UPDATE_ACL by itself. Also calling of mysql_insert() is
  simplified.
sql/sql_prepare.cc:
  insert_precheck() don't need "update" parameter any longer since
  now we set lex->duplicates to DUP_UPDATE if INSERT has ON DUPLICATE
  KEY UPDATE clause, so it can determine whenever it is needed to
  require UPDATE_ACL by itself. Also calling of mysql_insert() is
  simplified.
sql/sql_yacc.yy:
  It is better to set Lex->duplicates= DUP_UPDATE right in parser if we
  have INSERT with ON DUPLICATE KEY UPDATE clause, rather doing this later.
2004-10-20 16:04:43 +04:00
unknown
ed8ec2cf16 Code cleanups (done during review of new code)
Rename innodb_table_locks_old_behavior -> innodb_table_locks
Set innodb_table_locks to off by default to get same behaviour as in MySQL 4.0.20
(This means that Innodb ignore table locks by default, which makes it easier to combine MyISAM and InnoDB to simulate a transaction)


libmysql/libmysql.c:
  Use ulong instead of unsigned long
  Reuse _dig_vec()
myisam/myisampack.c:
  Simplify code
mysql-test/r/innodb-lock.result:
  new test case
mysql-test/t/innodb-lock.test:
  new test case
sql/ha_innodb.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
sql/mysqld.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
  Set this off by default to get same behaviour as in MySQL 4.0.20
sql/set_var.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
sql/sql_class.h:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
2004-10-20 11:24:08 +03:00
unknown
2d4bfdb1e9 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-clean
2004-10-19 22:33:39 +02:00
unknown
afe39f2590 Optimization: in the replication slave, we can avoid doing one strlen() per event's execution,
as we already have db_len in Log_event. Only if rewrite_db() changed the db we need a strlen
(so we now do the strlen() in rewrite_db). Plus a test (we had none for --replicate-rewrite-db :( ).


sql/log_event.cc:
  The goal is to get of rid of one strlen() per replication event in slave:
  we don't need to compute strlen(thd->db) as we already have db_len in the event;
  only case where we need to do a strlen() is if rewrite_db() changed the db.
  Note that db_len is always a meaningful value. It's 0 if event's db is 0.
sql/slave.cc:
  rewrite_db now returns the len of the returned db.
  print_slave_db_safe() needn't call rewrite_db() as rewrite_db() is already called by caller.
sql/slave.h:
  declaration updates for slave.cc
2004-10-19 22:27:19 +02:00
unknown
f0a6f2b6a5 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-merge
2004-10-19 15:00:02 +00:00
unknown
9c8436505d A fix (bug #6101: mysqldump writes invalid SQL).
client/mysqldump.c:
  A fix (bug #6101: mysqldump writes invalid SQL).
  Syntax corrected.
2004-10-19 11:00:44 +05:00
unknown
012de9d742 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-18 13:39:19 +00:00
unknown
1412365a3f Bug #6139 UNION doesn't understand collate in the column of second select 2004-10-18 17:56:25 +05:00
unknown
a8b7ac32d0 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-18 12:12:02 +00:00
unknown
5267ec8a5a Bug #6040 can't retrieve records with umlaut characters in case insensitive manner 2004-10-18 15:23:24 +05:00
unknown
f125849dd1 New tests for bug#1644 and bug#1676,
test for bug#1180 changed to table naming scheme 't#'.


mysql-test/r/ps_11bugs.result:
  Expected results of new tests for bug#1644 and bug#1676,
  test for bug#1180 changed to table naming scheme 't#'.
mysql-test/t/ps_11bugs.test:
  New tests to check bug#1644 and bug#1676,
  test for bug#1180 changed to table naming scheme 't#'.
2004-10-15 12:56:57 +02:00
unknown
c1a91f4b3e Merge mysql.com:/M41/mysql-4.1 into mysql.com:/M41/push-4.1 2004-10-15 10:34:40 +02:00
unknown
aa43bc07d5 Merge mysql.com:/home/jonas/src/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1-ndb
2004-10-15 08:11:45 +02:00
unknown
d942710916 Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1
2004-10-15 08:10:08 +02:00
unknown
3329f3161b ctype_utf8.test, ctype_utf8.result:
Wrong handler.


mysql-test/r/ctype_utf8.result:
  Wrong handler.
mysql-test/t/ctype_utf8.test:
  Wrong handler.
2004-10-14 16:40:03 +05:00
unknown
ae0acc8472 Bug #6019 SELECT tries to use too short prefix index on utf8 data 2004-10-14 16:36:29 +05:00
unknown
364ebd65f8 There were no tests for bug#1644 and bug#1676, added them now.
mysql-test/r/ps_11bugs.result:
  Expected results of the added tests for bug#1644 and bug#1676.
mysql-test/t/ps_11bugs.test:
  Added tests for bug#1644 and bug#1676,
  also minor comments.
2004-10-14 13:22:25 +02:00
unknown
81914f489e Bug #6043 erratic searching for diacriticals in indexed MyISAM UTF-8 table 2004-10-14 14:14:50 +05:00
unknown
54b00f5453 A fix and test case for Bug#5985 ""prepare stmt from "select rand(?)"
crashes server." The fix makes Item_func_rand prepared-statements
aware plus it fixes the case when RAND is used in prepared
statements and replication is on (as well as several similar issues).
Until now we did not reset THD before every execution of a prepared
statement, so if some execution had set thd->time_zone_used
or thd->rand_used they would not be reset until next mysql_parse.
Some of post-review fixes done.


mysql-test/r/ps.result:
  A test case for Bug#5985: test results fixed.
mysql-test/t/ps.test:
  A test case for Bug#5985 "prepare stmt from "select rand(?)" crashes
  server."
sql/item_func.cc:
  Actual fix for Bug#5985: Item_func_rand rewritten to be 
  prepared statements aware.
sql/item_func.h:
  Actual fix for Bug#5985: Item_func_rand rewritten to be 
  prepared statements aware.
sql/mysql_priv.h:
  We need a separate call to reset THD state before every execute of
  a prepared statement. Otherwise things like THD->user_var_events
  are never cleaned up and bloat binary log (as the list of events
  grows from execution to execution).
sql/sql_class.cc:
  Statement::end_statement -> THD::end_statement()
  (a leftover from some design change which is not to pushed now, but the
  leftover is to be pushed).
sql/sql_class.h:
  Statement::end_statement -> THD::end_statement()
  (a leftover from some design change which is not to pushed now, but the
  leftover is to be pushed).
sql/sql_lex.cc:
  Move the part responsible for initializing LEX from mysql_init_query
  to lex_start.
sql/sql_lex.h:
  All lex-related initialization is now in lex_start.
  Move thd->select_number to lex->select_number to be able to use it
  easily in lex_start.
sql/sql_parse.cc:
  Split mysql_init_query into two functions: mysql_reset_thd_for_next_query,
  which is used in PS and conventional execution, and lex_start, used only
  when we want to parse something.
  Fix init_connect to use initialized THD.
sql/sql_prepare.cc:
  Deploy mysql_reset_thd_for_next_query to reset THD state before
  execution of a prepared statement.
  Normally this should have been added to just one place, but
  we have to reset thd before assigning placeholders from variables,
  thus we can't do that in execute_stmt (yuck).
2004-10-14 02:53:59 +04:00
unknown
9b027c04c7 Merge mysql.com:/home/jonas/src/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1-ndb


sql/ha_ndbcluster.cc:
  Auto merged
2004-10-13 10:19:28 +02:00
unknown
92dce374ae Bug#6020, any lock >= write_allow_write is a write lock
mysql-test/r/ndb_lock.result:
  Add testcases for table locks
mysql-test/t/ndb_lock.test:
  Add testcases for table locks
2004-10-13 10:08:18 +02:00
unknown
d007600b9b ps.test, ps.result: a test case for Bug#6042 "constants
propogation works only once (prepared statements)".


mysql-test/r/ps.result:
  Test case for Bug#6042: test results fixed
mysql-test/t/ps.test:
  A test case for Bug#6042 "constants propogation works only once
  (prepared statements).
2004-10-12 21:16:07 +04:00
unknown
612c83b845 Fix for bug#5138 continued: added comments, removed extra debug printf calls, changed ha_heap::records_in_range to use table->rec_per_key.
heap/hp_block.c:
  Fix for bug#5138 continued: Added comments.
heap/hp_delete.c:
  Fix for bug#5138 continued: Added comments.
heap/hp_write.c:
  Fix for bug#5138 continued: Added comments, removed unneeded printf
include/heap.h:
  Fix for bug#5138 continued: Added comments.
mysql-test/r/heap_hash.result:
  Fix for bug#5138 continued: added FLUSH TABLES and rec_per_key estimates tests, updated test results
mysql-test/t/heap_hash.test:
  Fix for bug#5138 continued: added FLUSH TABLES and rec_per_key estimates tests, updated test results
sql/ha_heap.cc:
  Fix for bug#5138 continued: 
    fixed comments to be correct
    removed unneded printf
    use TABLE::rec_per_key for records_in_range statistics
2004-10-12 18:21:25 +04:00
unknown
4855ff5152 New tests for prepared statements:
- 'ps_10nestset' uses a "nested set" approach for an employee 
  hierarchy, then does arithmetic on the "salary" field;
  (soon) to be extended by inserts / deletes which imply
  mass updates on the "l"/"r" fields showing the set inclusion,
- 'ps_11bugs' will get (some of ?) those bug DB entries which
  refer to prepared statements, but whose number does not appear
  in a test file comment - so it will also be extended.
2004-10-12 16:00:50 +02:00
unknown
27a19225af Fix order by 2004-10-12 07:20:38 +02:00
unknown
b078da188e Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-11 22:31:44 +00:00
unknown
910e7daa94 another order by fix for ndb 2004-10-11 20:58:48 +00:00
unknown
a66a4dfb59 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-10-11 11:02:24 +02:00
unknown
c5f9a412ce Fix for BUG#5949 "error code 1223 in binlog when using innobackup":
when one connection had done FLUSH TABLES WITH READ LOCK, some updates, and then COMMIT,
it was accepted but my_error() was called and so, while client got no error, error was logged in binlog.
We now don't call my_error() in this case; we assume the connection know what it does.
This problem was specific to 4.0.21. The change is needed to make replication work with existing versions of innobackup.


sql/lock.cc:
  If a connection has done FLUSH TABLES WITH READ LOCK and now is doing COMMIT, don't give error
  (applies only if it's the same connection; others' COMMITs are still blocked).
2004-10-11 11:01:38 +02:00
unknown
9addd5f73d Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-merge
2004-10-10 14:08:18 +00:00
unknown
1073271b1c Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.b5382
2004-10-10 16:31:42 +05:00
unknown
da03d0a1f8 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
2004-10-10 11:31:41 +00:00
unknown
e61454142e Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-merge


ndb/src/ndbapi/Ndb.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2004-10-10 10:03:10 +00:00
unknown
cb81894a35 A fix (bug #5382: Server crashes after writing INTO OUTFILE) 2004-10-10 14:40:24 +05:00
unknown
12bef7a8a6 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
2004-10-10 08:32:15 +00:00
unknown
ed5b9e9a3f Fixes bug with tableImpl with blobs not being initialized properly w.r.t pointer to blob tableImpl in column
added blob to test to see that blob tables don't show up in show tables
    auto increment setting need not fetch blob tables (will otherwise generate error during table creation)
    moved addBlobTables out of fetchGlobalTableImpl to get_local_table_info
    changed addBlobTables to start from last column and break if all blobs added
    also addBlobTables will return -1 if failed (typically getTable)
    changed to using get_local_table_info with internal table name where applicable for efficiency
    added option to get_local_table_info wether to fetch blob tables or not
    getTable always fetches the blobtables
    moved addBlobTables to get_local_table_info to always be called, even if main table goes to cache only


mysql-test/r/ndb_autodiscover.result:
  added blob to test to see that blob tables don't show up in show tables
mysql-test/t/ndb_autodiscover.test:
  added blob to test to see that blob tables don't show up in show tables
ndb/src/ndbapi/Ndb.cpp:
  auto increment setting need not fetch blob tables (will otherwise generate error during table creation)
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  moved addBlobTables out of fetchGlobalTableImpl to get_local_table_info
  changed addBlobTables to start from last column and break if all blobs added
  also addBlobTables will return -1 if failed (typically getTable)
  changed to using get_local_table_info with internal table name where applicable for efficiency
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  added option to get_local_table_info wether to fetch blob tables or not
  getTable always fetches the blobtables
  moved addBlobTables to get_local_table_info to always be called, even if main table goes to cache only
2004-10-10 08:31:45 +00:00
unknown
5ddf724d5e Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into gw.mysql.r18.ru:/usr/home/ram/work/4.1.gconcat


sql/item_sum.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-10-10 12:35:39 +05:00
unknown
b123f514b6 Blob support for the group_concat() function.
(Bug #4315: GROUP_CONCAT with ORDER BY returns strange results for TEXT fields
 Bug #5564: Strange behaviour with group_concat and distinct
 Bug #5970: group_concat doesn't print warnings)
2004-10-10 12:10:53 +05:00
unknown
1d48aec228 A fix and test case for Bug#5987 "subselect in bool function
crashes server (prepared statements)": the bug was that all boolean
items always recovered its original arguments at statement cleanup 
stage.
This collided with Item_subselect::select_transformer, which tries to 
permanently change the item tree to use a transformed subselect instead of
original one.
So we had this call sequence for prepare:
mysql_stmt_prepare -> JOIN::prepare -> 
Item_subselect::fix_fields -> the item tree gets transformed ->
Item_bool_rowready_func2::cleanup, item tree is recovered to original
state, while it shouldn't have been;
mysql_stmt_execute -> attempts to execute a broken tree -> crash.
Now instead of bluntly recovering all arguments of bool functions in 
Item_bool_rowready_func2::cleanup, we recover only those
which were changed, and do it in one place.
There still would exist a possibility for a collision with subselect
tranformation, if permanent and temporary changes were performed at the 
same stage.
But fortunately subselect transformation is always done first, so it 
doesn't conflict with the optimization done by propogate_cond_constants.
Now we have: 
mysql_stmt_prepare -> JOIN::prepare -> subselect transformation 
permanently changes the tree -> cleanup doesn't recover anything, 
because nothing was registered for recovery.
mysql_stmt_execute -> JOIN::prepare (the tree is already transformed, 
so it doesn't change), JOIN::optimize -> 
propogate_cond_constants -> temporary changes the item tree 
with constants -> JOIN::execute -> cleanup -> 
the changes done by propogate_cond_constants are recovered, as
they were registered for recovery.


mysql-test/r/ps.result:
  Bug#5987: test results fixed.
mysql-test/t/ps.test:
  A test for bug#5987 "subselect in bool function crashes server 
  (prepared statements)"
sql/item.cc:
  resolve_const_item is now responsible to register all changes of the 
  item tree for recovery
sql/item.h:
  resolve_const_item signagture changed
sql/item_cmpfunc.h:
  Arguments of boolean functions are now recovered using the 
  centralized registry of THD.
sql/sql_class.cc:
  It's crucial to add new items to the beginning of the recovery list,
  so that the recovery is performed in LIFO mode: otherwise if we 
  change one node of a tree twice, it will be recovered to some intermediate
  state.
sql/sql_select.cc:
  change_cond_ref_to_const and propogate_cond_constants are now responsible
  to register all changes of the item tree for recovery.
  The recovery is done using the centralized THD registry of
  changed tree items.
2004-10-10 02:39:22 +04:00
unknown
3d963659e4 BUG#5973 ndb table belonging to different database shows up in SHOW TABLES
mysql-test/r/ndb_autodiscover.result:
  Added test cases to check that SHOW TABLES  only show tables in the selected  db.
mysql-test/t/ndb_autodiscover.test:
  Added test cases to check that SHOW TABLES  only show tables in the selected  db.
sql/ha_ndbcluster.cc:
  Only find files for the current db
  Only add files to files list which can be created i.e has a valid frm blob. This prevents NDB$BLOB tables and tables created from NdbApi to show up.
2004-10-08 13:37:13 +02:00
unknown
36b3ed27fb Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/media/sda1/mysql/mysql-4.1-5748-anew


sql/item_cmpfunc.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-10-08 02:22:40 +04:00
unknown
8fa6f37a29 A fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
crashes mysqld": implementation for a generic item tree modifications
registry. Every item tree modification which should be rolled back for
subsequent execution of a prepared statement or stored procedure should
be saved in the registry. All such modifications are rolled back at once
during cleanup stage of PS.
Actual fix for the bug just adds a call to register modifications to
convert_constant_item.
Post review fixes implemented.


mysql-test/r/ps.result:
  A fix for bug#5748, test results fixed.
mysql-test/t/ps.test:
  A test case for Bug#5748 "Prepared statement with BETWEEN and bigint 
  values crashes mysqld"
sql/item.cc:
  Fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
  crashes mysqld":
  First step in removing up item-specific cleanups: now all such
  tree modifications should be done using the genericm mechanism implemented
  in this changeset.
sql/item.h:
  Fix for Bug#5748 "Prepared statement with BETWEEN and bigint values
  crashes mysqld": no need for an item-specific change record any more.
sql/item_cmpfunc.cc:
  A fix for Bug#5748 "Prepared statement with BETWEEN and bigint 
  values crashes mysqld": register item tree transformation performed by
  convert_constant_item.
sql/sql_class.cc:
  Implementation for item tree transformations registry.
sql/sql_class.h:
  Declarations, necessary for the tree transformations registry.
sql/sql_parse.cc:
  Assert that the item tree transformations registry is not used for 
  conventional execution.
sql/sql_prepare.cc:
  Use of the item tree modifications registry in prepared statements:
  rollback all modifications in the end of statement prepare and execute.
  Also we now always set thd->current_arena to be able to determine that
  this is an execution of prepared statement inside the registry code.
tests/client_test.c:
  A typo fixed.
2004-10-08 02:21:19 +04:00
unknown
05e45be511 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-merge


sql/ha_ndbcluster.cc:
  Auto merged
2004-10-07 16:57:53 +00:00
unknown
1b991b1a40 ndb_alter_table.result, ndb_alter_table.test:
...


mysql-test/t/ndb_alter_table.test:
  ...
mysql-test/r/ndb_alter_table.result:
  ...
2004-10-07 16:30:21 +00:00
unknown
4cf6ce7e8b Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1-ndb
into neptunus.(none):/home/magnus/mysql/mysql-4.1-ndb
2004-10-07 15:42:56 +02:00
unknown
b67205dd43 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-07 13:42:55 +00:00
unknown
9acec233d3 more order by fixes 2004-10-07 12:36:37 +00:00
unknown
77a56a6a9f Initialise "sorted" variable in constructor of QUICK_SELECT. The variable is set to 1 in test_if_skip_sort_order if we decide to optimize "order by" by uinsg index_read.
mysql-test/r/ndb_index_ordered.result:
  Another test to check the use of "sorted" in combination with reset_bounds()
mysql-test/t/ndb_index_ordered.test:
  Another test to check the use of "sorted" in combination with reset_bounds()
sql/ha_ndbcluster.cc:
  Check that sorted is set to 0 or 1.
sql/opt_range.cc:
  Initialise the sorted variable to zero QUICK_SELECT constructor.
2004-10-07 11:57:48 +02:00
unknown
d36d5a2957 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-10-07 09:57:46 +00:00
unknown
0129f32bfc Manual merge of tree containing fix for bug #5915 "ALTER TABLE behaves
differently when converting column to auto_increment in 4.1" with
current tree.


mysql-test/t/type_timestamp.test:
  Auto merged
mysql-test/r/type_timestamp.result:
  Manual merge.
sql/sql_table.cc:
  Manual merge.
2004-10-07 13:51:32 +04:00
unknown
5b3444d2fa Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-10-07 12:51:31 +03:00
unknown
1d7ae13349 more order by for ndb 2004-10-07 09:51:30 +00:00
unknown
92c901286e Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/mysqld.cc:
  Auto merged
2004-10-07 12:37:21 +03:00
unknown
48923804cb added order by to give same order results on different endian and different sized clusters 2004-10-07 09:27:39 +00:00
unknown
34789efd31 Fix for bug #5915 "ALTER TABLE behaves differently when converting column
to auto_increment in 4.1".
Now we are enforcing NO_AUTO_VALUE_ON_ZERO mode during ALTER TABLE only
if we are converting one auto_increment column to another auto_increment
column (this also includes most common case when we don't do anything
with such column).

Also now when we convert some column to TIMESTAMP NOT NULL column with
ALTER TABLE we convert NULL values to current timestamp, (as we do this
in INSERT). One can still get old behavior by setting system TIMESTAMP
variable to 0.


mysql-test/r/auto_increment.result:
  Added tests for ALTER TABLE converting columns containing NULL and 0
  values to AUTO_INCREMENT columns.
mysql-test/r/type_timestamp.result:
  Removed test for creation of TIMESTAMP(19) columns (it is 4.0 specific).
  Added test for ALTER TABLE converting columns containing NULL values
  to TIMESTAMP columns.
mysql-test/t/auto_increment.test:
  Added tests for ALTER TABLE converting columns containing NULL and 0
  values to AUTO_INCREMENT columns.
mysql-test/t/type_timestamp.test:
  Removed test for creation of TIMESTAMP(19) columns (it is 4.0 specific).
  Added test for ALTER TABLE converting columns containing NULL values
  to TIMESTAMP columns.
sql/field_conv.cc:
  Fix bug #5915 "ALTER TABLE behaves differently when converting column
  to auto_increment in 4.1". Also now when we are converting some column
  to TIMESTAMP column, we are converting NULL values to CURRENT_TIMESTAMP
  (as it was initially planned).
  
  do_copy_timestamp(): Fixed comment.
  do_copy_next_number(): We should also set auto_increment_field_not_null
    to FALSE if we have NULL in source field.
  Copy_field::set(): Moved setting of copy functions for TIMESTAMP and
    AUTO_INCREMENT fields to proper place (this was dead code before).
sql/sql_table.cc:
  Fix for bug #5915 "ALTER TABLE behaves differently when converting column
  to auto_increment in 4.1".
  
  Instead of always forcing NO_AUTO_VALUE_ON_ZERO in ALTER TABLE it is
  better to do this only if we are converting one auto_increment column
  to another auto_increment column (this also includes most common case
  when we don't do anything with such column).
2004-10-07 13:02:39 +04:00
unknown
1f43673426 adder order by 2004-10-07 08:42:11 +00:00
unknown
96e7be58c8 After merge fixes
Some bigger code changes was necessary becasue of the multi-table-update and the new HANDLER code


include/hash.h:
  Added back function that's was used in 4.0
mysql-test/r/delete.result:
  Update results after merge
mysql-test/r/flush_table.result:
  Update results after merge
mysql-test/r/func_str.result:
  Update results after merge
mysql-test/r/handler.result:
  Update results after merge
  Change is big becasue in MySQL 4.1 you are not allowed to qualify the handler alias with a databasename
mysql-test/r/multi_update.result:
  More startup cleanups
mysql-test/r/rename.result:
  More startup-cleanups
mysql-test/r/select.result:
  More startup cleanups
mysql-test/r/show_check.result:
  More startup-cleanups
mysql-test/t/ctype_latin1_de.test:
  Cleanup
mysql-test/t/derived.test:
  Portability fix
mysql-test/t/handler.test:
  Update results after merge
  Change is big becasue in MySQL 4.1 you are not allowed to qualify the handler alias with a databasename
mysql-test/t/multi_update.test:
  More startup cleanups
mysql-test/t/range.test:
  More comments
mysql-test/t/rename.test:
  More startup cleanups
mysql-test/t/select.test:
  More startup cleanups
mysql-test/t/show_check.test:
  More startup cleanups
mysql-test/t/type_timestamp.test:
  Add back test deleted during merge
sql/item_cmpfunc.cc:
  After merge fixes
sql/item_func.cc:
  Remove compiler warning
sql/mysql_priv.h:
  After merge fixes
sql/mysqld.cc:
  After merge fixes
sql/sql_acl.cc:
  More debugging
sql/sql_base.cc:
  After merge fixes
  (This fix was needed bacause of multi-table-update reopens tables)
sql/sql_handler.cc:
  After merge fixes
sql/sql_lex.h:
  After merge fixes
sql/sql_select.cc:
  After merge fixes
sql/sql_show.cc:
  After merge fixes
sql/sql_table.cc:
  After merge fixes
  Simple cleanup of mysql_discard_or_import_tablespace
sql/sql_update.cc:
  After merge fixes
  Rework mysql_multi_update to take into account derived tables.
sql/sql_yacc.yy:
  After merge fixes
2004-10-07 10:50:13 +03:00
unknown
bbab9ec678 Merge with 4.0 for 4.1 release
Noteworthy:
- New HANDLER code
- New multi-update-grant-check code
- Table lock code in ha_innodb.cc was not applied


BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-ctype-latin1_de.c~c5d8f9208bceb98e:
  Auto merged
Build-tools/mysql-copyright-2:
  Auto merged
acinclude.m4:
  Auto merged
client/mysqladmin.c:
  Auto merged
client/mysqldump.c:
  Auto merged
include/config-win.h:
  Auto merged
include/my_global.h:
  Auto merged
include/myisam.h:
  Auto merged
innobase/btr/btr0btr.c:
  Auto merged
innobase/buf/buf0buf.c:
  Auto merged
ltmain.sh:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/fsp/fsp0fsp.c:
  Auto merged
innobase/include/dict0dict.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/log/log0log.c:
  Auto merged
innobase/log/log0recv.c:
  Auto merged
innobase/pars/pars0opt.c:
  Auto merged
innobase/row/row0row.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
innobase/ut/ut0dbg.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_close.c:
  Auto merged
myisam/mi_create.c:
  Auto merged
myisam/mi_locking.c:
  Auto merged
myisam/myisampack.c:
  Auto merged
mysql-test/r/delete.result:
  Auto merged
mysql-test/r/func_if.result:
  Auto merged
Build-tools/mysql-copyright:
  Merge with 4.0 (too most of the code from 4.0)
Makefile.am:
  merge
client/mysql.cc:
  Used 4.1 code
configure.in:
  merge
innobase/os/os0file.c:
  merge
innobase/row/row0mysql.c:
  merge
mysql-test/r/ctype_latin1_de.result:
  merge
mysql-test/r/flush_table.result:
  merge
mysql-test/r/func_str.result:
  merge
mysql-test/r/handler.result:
  merge
mysql-test/r/multi_update.result:
  merge
mysql-test/r/type_timestamp.result:
  Removed testing of 'new' mode, as this is only relevant for 4.0
mysql-test/r/update.result:
  merge
mysql-test/t/delete.test:
  merge
mysql-test/t/flush_table.test:
  merge
mysql-test/t/func_str.test:
  merge
mysql-test/t/handler.test:
  merge
mysql-test/t/multi_update.test:
  merge
mysql-test/t/type_timestamp.test:
  Removed testing of 'new' mode, as this is only relevant for 4.0
mysql-test/t/update.test:
  merge
mysys/errors.c:
  merge
mysys/my_fstream.c:
  merge
mysys/my_pread.c:
  merge
mysys/my_write.c:
  merge
mysys/mysys_priv.h:
  merge
scripts/mysqlhotcopy.sh:
  merge
sql/field.cc:
  Keep code from 4.1
sql/field.h:
  Keep code from 4.1
sql/ha_innodb.cc:
  Don't merge lock code from 4.0; Heikki will look at this
sql/ha_myisam.cc:
  merge
sql/handler.cc:
  merge
sql/item_cmpfunc.cc:
  merge
sql/item_cmpfunc.h:
  merge
sql/item_strfunc.cc:
  merge
sql/mysql_priv.h:
  merge
sql/mysqld.cc:
  merge
sql/protocol.cc:
  merge
sql/records.cc:
  merge
sql/repl_failsafe.cc:
  merge
mysql-test/r/lock_multi.result:
  merge
mysql-test/t/ctype_latin1_de.test:
  merge
mysql-test/t/func_if.test:
  merge
mysql-test/t/lock_multi.test:
  merge
sql/repl_failsafe.h:
  merge
  Remove unnessessary header protection
sql/slave.h:
  merge
sql/sql_acl.cc:
  merge
sql/sql_base.cc:
  merge
sql/sql_cache.cc:
  auto merge
sql/sql_class.cc:
  merge
sql/sql_class.h:
  merge
sql/sql_delete.cc:
  merge
sql/sql_handler.cc:
  Get new HANDLER code into 4.1
sql/sql_parse.cc:
  Keep old file
sql/sql_repl.cc:
  merge
sql/sql_repl.h:
  merge
sql/sql_show.cc:
  merge
sql/sql_table.cc:
  merge
sql/sql_union.cc:
  Applied the examine_rows bug fix from 4.0 by hand
sql/sql_update.cc:
  New multi-update-grant-check code from 4.0
sql/sql_yacc.yy:
  New multi-update-grant-check code from 4.0
sql/stacktrace.c:
  merge
sql/table.h:
  merge
2004-10-06 19:14:33 +03:00
unknown
4a618a35c5 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb2


BitKeeper/deleted/.del-ndb_subquery.result:
  Delete: mysql-test/r/ndb_subquery.result
BitKeeper/deleted/.del-ndb_subquery.test:
  Delete: mysql-test/t/ndb_subquery.test
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
ndb/test/run-test/atrt-mysql-test-run:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2004-10-06 13:34:17 +00:00
unknown
838af107a3 bug#5736, subqueries and not in
and testcases


ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  bug#5736, subqueries and not in
sql/ha_ndbcluster.cc:
  bug#5736, subqueries and not in
2004-10-06 13:18:55 +00:00
unknown
809d52d179 testcase for bug#5736
fix of changed clo to mysql-test-run


ndb/test/run-test/atrt-mysql-test-run:
  Fix options to mysql-test-run
2004-10-06 11:00:09 +02:00
unknown
95e1c07483 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.0
into gw.mysql.r18.ru:/usr/home/ram/work/4.0.b5733


sql/records.cc:
  Auto merged
2004-10-06 12:49:56 +05:00
unknown
70a3abf259 Bug #5832 SELECT doesn't return records in some cases 2004-10-05 21:22:14 +05:00
unknown
b29e9496f0 Merge mysql.com:/home/jonas/src/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1-ndb
2004-10-05 15:02:10 +02:00
unknown
08e56fae98 Fix for bug #5555: "GROUP BY enum_field" returns incorrect results 2004-10-05 17:02:09 +04:00