Commit graph

24685 commits

Author SHA1 Message Date
unknown
f1d5c0489b Bug#10932 - Building server with key limit of 128, makes test cases fail
This patch allows to configure MyISAM for 128 indexes per table.
The main problem is the key_map, wich is implemented as an ulonglong.
To get rid of the limit and keep the efficient and flexible
implementation, the highest bit is now used for all upper keys.
This means that the lower keys can be disabled and enabled 
individually as usual and the high keys can only be disabled and
enabled as a block. That way the existing test suite is still
applicable, while more keys work, though slightly less efficient.
To really get more than 64 keys, some defines need to be changed.
Another patch will address this.


include/my_bitmap.h:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Added the declaration for a function that extends the highest bit value
  to all upper bits of a bigger bitmap.
include/myisam.h:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed MI_MAX_POSSIBLE_KEY to what it was meant for.
  Added a bunch of macros to handle the MyISAM key_map.
myisam/mi_check.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_create.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_delete.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_extra.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_open.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
  Changed pointer types from signed char* to unsigned char*.
myisam/mi_preload.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_rsame.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_rsamepos.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_search.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_update.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/mi_write.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/myisamchk.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/myisamdef.h:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed pointer types from signed char* to unsigned char*.
myisam/myisamlog.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/myisampack.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
myisam/sort.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
mysys/my_bitmap.c:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Added a function that extends the highest bit value
  to all upper bits of a bigger bitmap.
sql/ha_myisam.cc:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Changed key_map access to use the new macros.
sql/sql_bitmap.h:
  Bug#10932 - Building server with key limit of 128, makes test cases fail
  Added a method that extends the highest bit value
  to all upper bits of a bigger bitmap.
2005-07-19 14:13:56 +02:00
unknown
a2df1eb821 Fix for bug#11057 information_schema: columns table has some questionable contents
fixed BLOB, TEXT(wrong maximum length), BIT and integer types(wrong numeric_precision value)
2005-07-19 14:30:32 +05:00
unknown
b8497024cf Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/gluh/MySQL/Merge/5.0
2005-07-19 13:50:55 +05:00
unknown
11ff7b1654 Bug#11577 'show procedure/function status' doesn't work for user with limited access
changed 'SHOW PROCEDURE' behavoiur to be like INFORMATION_SCHEMA.routines
2005-07-19 13:49:43 +05:00
unknown
42b35721f0 Remove the ignored files.
BitKeeper/deleted/.del-mkinstalldirs~6f3fb2535a57b49a:
  Delete: mkinstalldirs
BitKeeper/deleted/.del-mkinstalldirs~cc63133db18af2f2:
  Delete: innobase/mkinstalldirs
2005-07-19 11:59:06 +04:00
unknown
ff9be6130e Added mkinstalldirs (an auxiliary autotools symlink) to the ignore
list.


BitKeeper/etc/ignore:
  Added innobase/mkinstalldirs mkinstalldirs to the ignore list
innobase/mkinstalldirs:
  Ignore
mkinstalldirs:
  Ignore
2005-07-19 11:35:16 +04:00
unknown
f97fefa866 Merge mysql.com:/Users/emurphy/src/bk-clean/mysql-5.0
into  mysql.com:/Users/emurphy/src/work/mysql-5.0-bug11567
2005-07-18 22:27:20 -04:00
unknown
ded9946481 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  radha.local:/Users/patg/mysql-build/mysql-5.0
2005-07-19 03:18:54 +02:00
unknown
f9e4c6e76e Eric's implentation of OPTIMIZE TABLE and REPAIR TABLE,
as well as changes to the test.


mysql-test/r/federated.result:
  New test results
mysql-test/t/federated.test:
  Removed explains per brian's suggestion since on his 64-bit amd, you get 
  different information, something to be ironed out later, as well as it 
  having nothing to do with federated.
sql/ha_federated.cc:
  - Eric Herman's implementation of repair and optimize!!!
  - Eric's changes to 1EQ0 to FALSE
sql/ha_federated.h:
  Eric's addition of LEN for each SQL string tokens.
2005-07-19 03:04:51 +02:00
unknown
cdf0387106 After-merge fixes.
configure.in:
  A hack to ensure that the tree compiles on SuSE 9.0 with -ansi -pedantic
mysql-test/r/olap.result:
  More post-merge fixes.
mysql-test/r/rpl_log.result:
  Post-merge fixes. Guilhem: please investigate.
mysql-test/r/rpl_rotate_logs.result:
  Post-merge fixes. Guilhem: please investigate.
mysql-test/t/olap.test:
  A post-merge fix.
2005-07-19 03:01:25 +04:00
unknown
cf8f1dac92 Merge mysql.com:/Users/emurphy/src/bk-clean/mysql-5.0
into  mysql.com:/Users/emurphy/src/work/mysql-5.0-bug11567
2005-07-18 17:55:26 -04:00
unknown
481ce989ca BUG#11567 Fixed binlog tests on windows.
sql/log_event.cc:
  BUG#11567 - mysqlbinlog tests failing on Windows.
  Cast was not working as intended with Windows compiler,
  the value of option was being printed instead. Reason
  is that config-win.h has '#define bool BOOL', and on
  Windows BOOL is a typedef for int, which means
  that all casts to bool are really a cast to int. Changed
  to explicitly print a 1 or 0 instead of using cast.
2005-07-18 17:47:26 -04:00
unknown
7f6f31ae73 Merge mysql.com:/home/kostja/mysql/mysql-4.1-root
into  mysql.com:/home/kostja/mysql/mysql-5.0-merge


client/mysqltest.c:
  Auto merged
mysql-test/r/rpl_log.result:
  Auto merged
mysql-test/r/rpl_rotate_logs.result:
  Auto merged
mysql-test/r/select.result:
  Auto merged
mysql-test/r/timezone_grant.result:
  Auto merged
mysql-test/t/ctype_utf8.test:
  Auto merged
mysql-test/t/timezone_grant.test:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
configure.in:
  Manual merge
mysql-test/r/olap.result:
  Manual merge
mysql-test/t/olap.test:
  Manual merge
mysql-test/t/select.test:
  Manual merge
sql/mysqld.cc:
  Manual merge
sql/sql_parse.cc:
  Manual merge
2005-07-19 00:55:37 +04:00
unknown
21332fe0a0 Fixed the ucs2 -> eucjpms conversion bug (bug#11717)
mysql-test/r/ctype_eucjpms.result:
  Added test for the bug#11717
mysql-test/t/ctype_eucjpms.test:
  Added test for the bug#11717
strings/ctype-eucjpms.c:
  Fixed the ucs2 -> eucjpms conversion bug
2005-07-18 13:38:56 -07:00
unknown
c682570431 Fix BUILD/autorun.sh to really bail out on error.
BUILD/autorun.sh:
  Make exit on error actually work.
2005-07-18 21:33:05 +04:00
unknown
f29f6ce18e Fixes to previous changeset
get_defaults_file() -> get_defaults_options()


include/my_sys.h:
  Remove deleted function
libmysql/libmysql.def:
  get_defaults_file() -> get_defaults_options()
libmysqld/libmysqld.def:
  get_defaults_file() -> get_defaults_options()
2005-07-18 20:05:30 +03:00
unknown
5b6c1348c7 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mishka.local:/home/my/mysql-5.0


client/mysqldump.c:
  Auto merged
include/my_sys.h:
  Auto merged
mysys/Makefile.am:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysys/default.c:
  SCCS merged
2005-07-18 19:03:01 +03:00
unknown
abde46de62 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into moonbone.local:/work/mysql-5.0-bug-11482
2005-07-18 20:03:00 +04:00
unknown
3e5cbdbb22 Merge moonbone.local:/work/mysql-4.1-bug-11868
into moonbone.local:/work/mysql-5.0-bug-11482


mysql-test/r/update.result:
  Auto merged
mysql-test/t/update.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-07-18 19:37:42 +04:00
unknown
76d1bf38d4 Merge grichter@bk-internal.mysql.com:/home/bk/mysql-5.0
into lmy002.wdf.sap.corp:/home/georg/work/mysql/prod/mysql-5.0
2005-07-18 17:34:30 +02:00
unknown
435a1c9392 select.test:
Changed test case comment to be more meaningful


mysql-test/t/select.test:
  Changed test case comment to be more meaningful
2005-07-18 19:34:29 +04:00
unknown
d4b1f6fa5d Manual merge
mysql-test/r/select.result:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-07-18 18:38:14 +04:00
unknown
6b08ac6b6b Fix bug#11482 4.1.12 produces different resultset for a complex query
than in previous 4.1.x

Wrongly applied optimization were adding NOT NULL constraint which results in
rejecting valid rows and reduced result set.

The problem was that add_notnull_conds() while checking subquery were adding
NOT NULL constraint to left joined table, to which, normally, optimization 
don't have to be applied.


sql/sql_select.cc:
  Fix bug #11482 Wrongly applied optimization was erroneously rejecting valid rows
  Constraint were added to optimization appliance test.
mysql-test/t/select.test:
  Test case for bug #11482  Wrongly applied optimization was erroneously rejecting valid rows
mysql-test/r/select.result:
  Test case for bug #11482  Wrongly applied optimization was erroneously rejecting valid rows
2005-07-18 18:30:19 +04:00
unknown
ddc3586495 Alleviate the autoconf requirement. 2005-07-18 18:03:58 +04:00
unknown
ffa7e3f1c8 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into production.mysql.com:/nfstmp1/guilhem/mysql-4.1-prod
2005-07-18 14:51:13 +02:00
unknown
750eedd9ab Fix for BUG#12003 "assertion failure in testsuite (double lock of
LOCK_thread_count)" and for BUG#12004 "SHOW BINARY LOGS reports 0
for the size of all binlogs but the current one".
There are a lot of 4.1->5.0 unmerged changes (hardest are in the optimizer), can't merge; still pushing in 4.1 because my changes 
are very small. Feel free to ask me if you have problems merging them.


mysql-test/r/rpl_log.result:
  correcting binlog sizes
mysql-test/r/rpl_rotate_logs.result:
  correcting binlog sizes
sql/mysqld.cc:
  don't lock LOCK_thread_count when you already have it
sql/sql_repl.cc:
  my_open() needs the complete name, not only the base name
2005-07-18 14:46:53 +02:00
unknown
68b4d7b74d Cleanups during review
Changed defaults option --instance to --defaults-group-suffix
Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order
Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX
mysql_print_defaults now understands --defaults-group-suffix
Remove usage of my_tempnam() (not safe function)
if( -> if ( and while( to while (


BitKeeper/deleted/.del-my_tempnam.c~a8562f15dad3012f:
  Delete: mysys/my_tempnam.c
VC++Files/client/mysqlclient.dsp:
  Remove not used file my_tempnam.c
VC++Files/client/mysqlclient_ia64.dsp:
  Remove not used file my_tempnam.c
VC++Files/libmysql/libmysql.dsp:
  Remove not used file my_tempnam.c
VC++Files/libmysql/libmysql_ia64.dsp:
  Remove not used file my_tempnam.c
VC++Files/mysys/mysys.dsp:
  Remove not used file my_tempnam.c
VC++Files/mysys/mysys_ia64.dsp:
  Remove not used file my_tempnam.c
client/mysql.cc:
  Change to use get_defaults_options()
  Remove compiler warnings
client/mysqldump.c:
  Indentation fixes
  Use quoted table name for 'primary_key_fields'
extra/my_print_defaults.c:
  Add support for --defaults-group-suffix
  change to use get_default_options()
extra/replace.c:
  Replace my_tempnam() with create_tmp_file() to allow us to remove my_tempnam.c
include/config-win.h:
  Added DEFAULT_GROUP_SUFFIX_ENV
include/my_sys.h:
  Change defaults_instance -> defaults_group_suffix
  Change get_defaults_files -> get_defaults_options
libmysql/Makefile.shared:
  Added DEFAULT_GROUP_SUFFIX_ENV
mysys/Makefile.am:
  Added DEFAULT_GROUP_SUFFIX_ENV
  Remove my_tempnam.c
mysys/default.c:
  Changed --instance to --defaults-group-suffix
  Changed MYSQL_INSTANCE to MYSQL_GROUP_SUFFIX and moved the name to Makefile.am
  (mysys shouldn't by MySQL independent)
  Changed option handling to allow --defaults-file, --defaults-extra-file and --defaults-group-suffix to be given in any order
mysys/default_modify.c:
  Optimized code to use allocated space more efficently
  Reduce code size
  Ensure that realloc() works independent of argument size
mysys/my_bitmap.c:
  Added missing return
sql/ha_innodb.cc:
  Change if( -> if (
sql/ha_ndbcluster.cc:
  Change while( -> while (
sql/item_cmpfunc.cc:
  Break loop early (simple optimization)
sql/item_strfunc.cc:
  Change if( -> if (
sql/log.cc:
  Fixed comment
sql/mysqld.cc:
  Change if( -> if (
sql/opt_range.cc:
  while( -> while (
  if( -> if (
sql/parse_file.cc:
  Change if( -> if (
sql/sql_cache.cc:
  while( -> while (
sql/sql_parse.cc:
  Change if( -> if (
sql/sql_prepare.cc:
  Added comment
sql/sql_select.cc:
  while( -> while (
  Removed index variable by incrementing pointer
sql/sql_show.cc:
  Change if( -> if (
sql/sql_yacc.yy:
  Change if( -> if (
tests/mysql_client_test.c:
  Added cast to first argument to bzero()
2005-07-18 15:33:18 +03:00
unknown
c4a3500d5e QNX does not know "uint", so the cast is rewritten as "unsigned int". 2005-07-18 13:52:18 +02:00
unknown
3ee0803855 Merge lgrimmer@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/space/my/mysql-4.1


mysql-test/t/ctype_utf8.test:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2005-07-18 11:31:11 +02:00
unknown
ee6866416f Merge lgrimmer@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/space/my/mysql-5.0


tests/mysql_client_test.c:
  Auto merged
2005-07-18 11:25:09 +02:00
unknown
0d0aa7a45a Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  krsna.patg.net:/home/patg/mysql-5.0
2005-07-17 10:20:11 -07:00
unknown
6a88fa48ae select.result, select.test:
Added a test case for bug #11745.
sql_select.cc:
  Fixed bug # 11745.
  Added support of where clause for queries with FROM DUAL.
sql_yacc.yy:
  Fixed bug # 11745.
  Added optional where clause for queries with FROM DUAL.


sql/sql_yacc.yy:
  Fixed bug # 11745.
  Added optional where clause for queries with FROM DUAL.
sql/sql_select.cc:
  Fixed bug # 11745.
  Added support of where clause for queries with FROM DUAL.
mysql-test/t/select.test:
  Added a test case for bug #11745.
mysql-test/r/select.result:
  Added a test case for bug #11745.
2005-07-17 09:46:14 -07:00
unknown
6771f8d0aa Federated Storage Engine, bug 9925 "Federated query processor (step 2 or step 3) not using logic in
WHERE statement"


sql/ha_federated.cc:
  Changes per Jimw's review. 
  
  notes about some suggestions:
  
  1. Tried to replace my_sprintf with strxmov, but had problems. Couldn't 
     get the test suite to run at all, and could not find any particular
     error. Since this is something that is not critical, I'll leave it
     as is for now.
  2. I would like to use my_error to create all of my error messages, but 
     cannot figure out how to get it to take more than one argument to be
     passed to the error message (I tried this once but had errors, and 
     cannot find an example of how to get it to work despite seeing messages
     with obviously more than one arg
  3. Replaced all string building from literals to defined SQL string pieces
     such as "SELECT ", "FROM " ...
  4. Format fixes, spacing fixes completed
  5. Removed records_in_range records calculation functionality
sql/ha_federated.h:
  Formatting changes, new defines for SQL query string tokens
sql/share/errmsg.txt:
  changed 'SRC' to 'SOURCE' per Jimw's review
2005-07-17 04:10:19 +02:00
unknown
89519b677e Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1


sql/sql_select.cc:
  Auto merged
2005-07-16 18:28:09 -07:00
unknown
e155a0c01d func_in.result, func_in.test:
Fixed bug #11885.
sql_select.cc:
  Fixed bug #11885.
  Predicates of the forms 'a IN (v)' 'a NOT IN (v)' now
  is replaced by 'a=v' and 'a<>v' at the parsing stage.
sql_yacc.yy:
  Fixed bug #11885.
  Predicates of the forms 'a IN (v)' 'a NOT IN (v)' now 
  is replaced by 'a=v' and 'a<>v' at the parsing stage.


sql/sql_yacc.yy:
  Fixed bug #11885.
  Predicates of the forms 'a IN (v)' 'a NOT IN (v) now 
  is replaced by 'a=v' and 'a<>v' at the parsing stage.
sql/sql_select.cc:
  Fixed bug #11885.
  Predicates of the forms 'a IN (v)' 'a NOT IN (v) now
  is replaced by 'a=v' and 'a<>v' at the parsing stage.
mysql-test/t/func_in.test:
  Fixed bug #11885.
mysql-test/r/func_in.result:
  Fixed bug #11885.
2005-07-16 18:06:34 -07:00
unknown
e2bd74015c opt_range.cc:
Fixed bug #11853.
  Corrected the code of the range optimization for
  NOT IN and NOT BETWEEN.
range.test, range.result:
  Fixed bug #11853.


mysql-test/t/range.test:
  Fixed bug #11853.
sql/opt_range.cc:
  Fixed bug #11853.
  Corrected the code of the range optimization for
  NOT IN and NOT BETWEEN.
2005-07-16 08:19:20 -07:00
unknown
7bdc4dd0a1 After-merge fixes (4.1 -> 5.0).
mysql-test/r/sp.result:
  Test results fixed: rewritten test for Bug#6129
mysql-test/r/view.result:
  Push a change to the result file from Sanja's patch.
mysql-test/t/sp.test:
  Rewrite the test for Bug#6129 (now that stored procedures don't
  evaluate system variables at parse, the test produced different results).
  The old test failed with 1 in the second invocation (the old
  result was wrong).
sql/item_func.cc:
  After-merge fix.
sql/item_func.h:
  After-merge fix.
sql/mysql_priv.h:
  After-merge fix.
sql/mysqld.cc:
  Rollback the patch for Bug#7403 (it breaks the test suite).
2005-07-16 16:10:42 +04:00
unknown
40efb3622d Merge mysql.com:/opt/local/work/mysql-4.1-root
into  mysql.com:/media/sda1/mysql/mysql-5.0-merge


mysql-test/r/select.result:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/ps.result:
  Manual merge (again).
mysql-test/t/ps.test:
  Manual merge (again).
mysql-test/t/select.test:
  Manual merge (again).
sql/item_func.cc:
  Manual merge (again).
sql/item_func.h:
  Manual merge (again).
sql/set_var.h:
  Manual merge (again).
2005-07-16 13:45:32 +04:00
unknown
7adfe96d9e Added test for Bug #11521
"Negative integer keys incorrectly substituted for 0 during range analysis."

The problem is that the range optimizer incorrectly replaces any negative
constant with '0' for all types except BIGINT because the method save_in_field()
casts negative integers to non-negative. This causes incorrect query
results where (0 = any_negative_number).

The problem caused by this bug is fixed by the patch for BUG#11185.
That patch constitutes an optimization due to which the problem code is
never called with negative constants. This patch adds a test so we are sure
that the problem does not reappear.


mysql-test/r/select.result:
  Test for BUG#11521.
mysql-test/t/select.test:
  Test for BUG#11521.
2005-07-16 10:30:25 +03:00
unknown
0789b177e5 cs fixes 2005-07-16 09:19:23 +02:00
unknown
757ad317a5 Merge grichter@bk-internal.mysql.com:/home/bk/mysql-5.0
into lmy002.wdf.sap.corp:/home/georg/work/mysql-5.0


tests/mysql_client_test.c:
  Auto merged
2005-07-16 09:13:31 +02:00
unknown
58f67c6d88 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug6-5.0
2005-07-16 08:35:21 +03:00
unknown
90002cdc7b Restore previous used client charset in mysql_reconnect
Moved mysql_set_character_set function to client.c
Changed function prototype for mysql_set_character_set (as suggested
by Konstantin)


include/mysql.h:
  Changed function prototype
libmysql/libmysql.c:
  moved mysql_set_character_set to client.c
sql-common/client.c:
  moved mysql_set_character_set to client.c
2005-07-16 07:13:40 +02:00
unknown
b6f3a37370 Merge bk-internal:/home/bk/mysql-4.1
into  mysql.com:/home/jimw/my/mysql-4.1-clean
2005-07-15 18:59:18 -07:00
unknown
cc57265b5d Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1
into moonbone.local:/work/mysql-4.1-bug-11868
2005-07-16 05:59:17 +04:00
unknown
560ff1a2ea Fix bug#11868 NOT NULL ref optimization in subquery used in update must be
disabled if ref is built with a key from the updated table

Problem was in add_not_null_conds() optimization function.
It contains following code:
JOIN_TAB *referred_tab= not_null_item->field->table->reginfo.join_tab;
...
add_cond_and_fix(&referred_tab->select_cond, notnull);
For UPDATE described in bug report referred_tab is 0 and dereferencing it
crashes the server.



sql/sql_select.cc:
  Fix bug #11868 NOT NULL ref optimization in subquery used in update must be
  disabled if ref is built with a key from the updated table
mysql-test/r/update.result:
  Test case for bug#11868 Update with subquery with ref built with a key from
  the updated table crashes server.
mysql-test/t/update.test:
  Test case for bug#11868 Update with subquery with ref built with a key from the updated table crashes server
2005-07-16 05:31:16 +04:00
unknown
2f4fd88a72 Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.0
into  zim.(none):/home/brian/mysql/foo-5.0
2005-07-15 17:37:17 -07:00
unknown
48995b9ab8 Added federated to max base test.
BUILD/SETUP.sh:
  Added federated to base_max tests.
2005-07-15 17:36:20 -07:00
unknown
d887a6924e This is the same patch as 1.1937, with small variable declaration changes, memory
deallocation cleanup


mysql-test/r/federated.result:
  new test results
mysql-test/t/federated.test:
  New tests, and added explains per Timour's suggestion. This will keep
          track of whether changes have been made to the optimiser that might affect
          Federated.
          Also changed the error codes to federated error codes in the error tests
sql/ha_federated.cc:
  1. Not using MAX_REMOTE_SIZE, so removed
           2. Changed all defines that were IO_SIZE to FEDERATED_QUERY_BUFFER_SIZE
           3. Now using Federated Error Codes
           4. Implemented ::info (gets valid 'records' number)
           5. Implemented ::read_range_first - now uses indexes in range operations
           6. Better allocation in get_share
           7. Cleaned up memory bug in get_share
           8. Better initial query "SELECT * FROM t1 WHERE 1=0" for check_foreign_data_src
           9. emit_key_part_name and emit_key_part_element for read_range_first to not
              have redundancy
           10. Made sure all 'append's pass length, and use append("") to ensure proper
               null termination of strings being built.
           11. Better message creation. If ER_QUERY_ON_FOREIGN_DATA_SRC, I also pass
               the actual error code and message from the foreign data src.
           12. Cleaned up how the result set and share->scheme is freed.
sql/share/errmsg.txt:
  New Federated error messages that are more tailored to the type of information
  we want to see when federated has an error.
mysql-test/include/federated.inc:
  New bitkeeper file, include file for separating setup from main test suite
mysql-test/include/federated_cleanup.inc:
  New BitKeeper file ``mysql-test/include/federated_cleanup.inc''
sql/ha_federated.h:
  Added comments where needed, one was already commented about
2005-07-15 17:33:47 -07:00
unknown
7768acb638 Merge bk-internal:/home/bk/mysql-4.1
into  mysql.com:/home/jimw/my/mysql-4.1-clean
2005-07-15 16:29:15 -07:00