Commit graph

6200 commits

Author SHA1 Message Date
unknown
f71f59731b treat parameter as constant in ORDER BY check of fields in SELECT list(Bug #3686)
sql/sql_select.cc:
  treat parameter as constant in ORDER BY check of fields in SELECT list
tests/client_test.c:
  test of using parameters in SELECT list with ORDER BY
2004-05-10 13:29:02 +03:00
unknown
c207325aaf Merge mysql.com:/home/mydev/mysql-4.1
into mysql.com:/home/mydev/mysql-4.1-wl1687


sql/handler.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2004-05-07 11:13:58 +02:00
unknown
e3211fbd6a ctype-win1250ch.c, ctype-czech.c:
Czech collations were renamed to _cs
Index.xml:
  Czech collation were renamed to _cs


sql/share/charsets/Index.xml:
  Czech collation were renamed to _cs
strings/ctype-czech.c:
  Czech collations were renamed to _cs
strings/ctype-win1250ch.c:
  Czech collations were renamed to _cs
2004-05-07 10:24:12 +05:00
unknown
dedea9b66b Portablity fix for system with case insenstive table names. (Without this ALTER TABLE can fail for InnoDB) 2004-05-07 06:34:44 +03:00
unknown
33e6b2af85 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


libmysql/libmysql.c:
  Auto merged
2004-05-07 01:44:07 +03:00
unknown
f3544f3c5d Portability fixes
Change strtoll -> my_strtoll10()
Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems (Bug #3472)


configure.in:
  Fixed problem on IRIX64 (One can't have AC_MSG_RESULT on same row as AC_DEFINE
extra/my_print_defaults.c:
  Fixed wrong definition for 'verbose'
include/my_global.h:
  Portability fix (IRIX64)
libmysql/client_settings.h:
  Remove compiler warnings
libmysql/libmysql.c:
  Remove compiler warnings
mysql-test/r/func_str.result:
  Updated results
mysql-test/r/key_cache.result:
  Updated results to not depend on key_blocks_unused
mysql-test/t/func_str.test:
  More test of long overflow
mysql-test/t/key_cache.test:
  Updated results to not depend on key_blocks_unused
sql/item.cc:
  Portability fix (don't use strtoll())
sql/item.h:
  Portability fix (don't use strtoll())
sql/item_sum.h:
  Portability fix (don't use strtoll())
sql/item_timefunc.cc:
  Fixed compiler warning
strings/ctype-simple.c:
  Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems
strings/ctype-ucs2.c:
  Fixed bug in my_strntoul() and my_strntol() where we got different values on 32 and 64 bit systems
2004-05-07 01:43:17 +03:00
unknown
cd328cc215 postreview fixes
sql/sql_lex.h:
  description of field
sql/sql_union.cc:
  layout fixed
2004-05-07 00:32:44 +03:00
unknown
56568288f0 fake_select_lex should be prepared during PS preparation to work correctly
item_list for fake_select will be created only once
(problem reported by valgrind in test_union2 fixed)


sql/sql_lex.h:
  new function to keep code in one place
sql/sql_union.cc:
  fake_select_lex should be prepared during PS preparation to work correctly
  item_list for fake_select will be created only once
2004-05-07 00:08:21 +03:00
unknown
151495baf7 mysql_stmt_reset now expects ok/error packet from server.
libmysql/libmysql.c:
  Make advanced_command check client reply
sql/sql_prepare.cc:
  mysql_stmt_reset now sends ok/error reply to the client.
tests/client_test.c:
  Memory leak fixed.
2004-05-06 22:44:00 +04:00
unknown
ffdf46a58a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/pem/work/mysql-4.1
2004-05-06 20:21:53 +02:00
unknown
526569690e Fixed (portability) bug in handler.h, and tried to silence cast warnings on some platforms.
sql/handler.h:
  Fixed (portability) bug. No qualified method names in the class definition.
sql/item_cmpfunc.h:
  Attempt to silence cast warnings on some platforms.
sql/item_subselect.h:
  Attempt to silence cast warnings on some platforms.
sql/set_var.cc:
  Silence warning (missing cast).
sql/spatial.h:
  Attempt to silence cast warnings on some platforms.
sql/sql_cache.cc:
  Silence warning (wrong cast).
sql/sql_lex.h:
  Attempt to silence cast warnings on some platforms.
2004-05-06 19:55:12 +02:00
unknown
bfe2425aad WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
HEAP: Copies the key count to a backup variable and sets the key count to zero.
That way, no HEAP function will ever try to touch any index.
Re-enabling is done by copying back the backup variable.
To avoid memory leak at table close, disable deletes all index trees.
Re-enabling must be done with empty indexes and data anyway. Otherwise,
the indexes would need to be repaired, wich HEAP is not capable of.
MyISAM: Only the key_map is cleared and set.
Re-enabling must be done with empty indexes and data. Otherwise, repair needs
to be done which will enable all keys persistently.
The former implementation disabled only non-unique keys and maked this persistent.
The new implementation additionally can disable all keys, but only without
making this persistent. Re-enabling all keys can be done without repair,
if data file and indexes are empty.


heap/heapdef.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Pulled hp_clear_keys() out of hp_clear().
heap/hp_clear.c:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Pulled hp_clear_keys() out of hp_clear().
  Added the new functions for disabling and enabling keys and to ask for the key state.
include/heap.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Added a new HP_SHARE element to save the key count while keys are disabled.
  Added declarations for the new functions.
myisam/mi_open.c:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Added the new functions for disabling and enabling keys and to ask for the key state.
myisam/myisamdef.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Added declarations for the new functions.
sql/ha_heap.cc:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Pulled set_keys_for_scanning() out of open().
  Added the new functions for disabling and enabling keys and to ask for the key state.
sql/ha_heap.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Added declarations for the new functions.
sql/ha_myisam.cc:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Extended disable_indexes() for all keys and no save.
  The argument is now 'mode' as it must handle different cases.
  Extended enable_indexes() for no save.
  The new feature needs the new argument 'mode' with the same semantics as in disable_indexes().
  Added indexes_are_disabled() to ask for the key state.
  Extended the existing call to enable_indexes() by the new argument.
sql/ha_myisam.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Modified the declarations of dis-/enable_indexes() for the new argument.
  Added the declaration of the new function to ask for the key state.
sql/handler.h:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Added declarations for the operation modes for the key switching functions.
  Modified the declarations of dis-/enable_indexes() for the new argument.
  Added the declaration of the new function to ask for the key state.
sql/sql_select.cc:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  In create_myisam_from_heap() take notice of disabled keys
  and disable them in the new table before copying the data.
sql/sql_table.cc:
  WL#1687 - Optimize UNION DISTINCT ... UNION ALL (again).
  Modified the calls of dis-/enable_indexes() for the new argument.
2004-05-06 15:53:01 +02:00
unknown
445148f083 Merge with 4.0 to get security patch for check_grant_colum
innobase/include/os0file.h:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
mysql-test/r/rpl_server_id2.result:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/slave.cc:
  Merge with 4.0
2004-05-06 13:42:26 +03:00
unknown
2d776e36d8 Merge mysql.com:/home/my/mysql-3.23 into mysql.com:/home/my/mysql-4.0
sql/sql_acl.cc:
  Auto merged
2004-05-06 11:42:35 +03:00
unknown
33359d0b66 Remove not used variable 2004-05-06 11:42:23 +03:00
unknown
cc7a8d9bed Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-05-06 04:41:09 +03:00
unknown
d91477ced6 Fixed wrong key usage which caused wrong result for some "WHERE primary_key=constant" queries where MySQL could use 'only index' (Bug #3666)
The bug was introduced in a patch in the 4.1.2 source tree.


mysql-test/r/key.result:
  New result
mysql-test/t/key.test:
  Added test case for bug in key read
sql/sql_select.cc:
  Fixed wrong key usage which caused wrong result for some "WHERE primary_key=constant" queries where MySQL could use 'only index' (Bug #3666)
2004-05-06 04:40:45 +03:00
unknown
cd57fc8bda Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-code-cleanup


sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
2004-05-06 01:06:18 +04:00
unknown
66842d6e57 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ndb-4.1
2004-05-05 23:19:13 +03:00
unknown
974ce66bdd Replication:
as the I/O thread filters on the server id, we must test replicate_same_server_id in it (on top of in the SQL thread).


mysql-test/r/rpl_server_id2.result:
  result update
sql/slave.cc:
  As the I/O thread filters on the server id, we must test replicate_same_server_id in it (on top of in the SQL thread).
2004-05-05 22:01:41 +02:00
unknown
bfa22229eb Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-05-05 21:51:26 +02:00
unknown
601bdde5ed very minor changes: a STOP SLAVE in a replication test to get rid of a non critical message in slave.err,
and a comment update


mysql-test/r/rpl_server_id2.result:
  result update
mysql-test/t/rpl_server_id2.test:
  We stop the slave before cleaning up otherwise we'll get
  'drop table t1' executed twice, so an error in the slave.err
  (not critical).
sql/slave.cc:
  update comment about 4.1 now that 4.1 is fixed (in a few minutes, exactly)
2004-05-05 21:50:51 +02:00
unknown
b52317df71 merge
mysql-test/r/subselect.result:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-05-05 22:30:01 +03:00
unknown
e5d43578fd Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/item_strfunc.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
2004-05-05 21:24:45 +03:00
unknown
000f76cfb8 after merge fixes
client/mysqldump.c:
  Fixed problem with multiple tables (--skip-quote didn't work properly for second table)
myisam/myisamchk.c:
  after merge fix
2004-05-05 21:24:21 +03:00
unknown
2c95f97c2b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ndb-4.1


mysql-test/r/subselect.result:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2004-05-05 21:24:13 +03:00
unknown
f6428e8bb9 caching of queries with isammerge tables forbiden using general way
SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause
correct table list passed to class constructor of select_update


mysql-test/r/subselect.result:
  do not show limit if it is not explicit
mysql-test/r/union.result:
  test of LIMIT + ORDER
mysql-test/t/union.test:
  test of LIMIT + ORDER
sql/ha_isammrg.h:
  caching of queries with isammerge tables forbiden
sql/sql_cache.cc:
  removed check on isammerge
sql/sql_lex.cc:
  tag of explicit limit in statement
sql/sql_lex.h:
  tag of explicit limit in statement
sql/sql_parse.cc:
  blanks in empty line removed
  no limit by default (SQL_SELECT_LIMIT as default will be applied only for SELECT statement if there was not explicit LIMIT clause)
sql/sql_union.cc:
  reverted incorrect patch
sql/sql_update.cc:
  reverted incorrect patch
  correct table list passed to class constructor
sql/sql_yacc.yy:
  explicit LIMIT marked
2004-05-05 21:21:41 +03:00
unknown
e1fc542382 Make Item_param::val_int and Item_param::val_str follow the used convention and return 0 if null_value==1.
sql/item.h:
  Added comments about Item::valxx() behavior if Item's value is NULL.
2004-05-05 20:04:25 +04:00
unknown
cd21f7ce40 Merge with 4.0.19
BitKeeper/etc/logging_ok:
  auto-union
VC++Files/client/mysqlclient.dsp:
  Auto merged
VC++Files/mysql.dsw:
  Auto merged
extra/perror.c:
  Auto merged
extra/replace.c:
  Auto merged
innobase/configure.in:
  Auto merged
innobase/include/lock0lock.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/include/sync0sync.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
ltmain.sh:
  Auto merged
BitKeeper/deleted/.del-libmysqld.def~8edf7b8780ce943c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/pars/lexyy.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
innobase/sync/sync0sync.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
mysql-test/r/alias.result:
  Auto merged
mysql-test/t/system_mysql_db_fix-master.opt:
  Auto merged
mysql-test/r/func_time.result:
  Automatic merge
mysql-test/r/innodb.result:
  Automatic merge
mysql-test/t/alias.test:
  Automatic merge
mysql-test/t/create.test:
  Automatic merge
mysql-test/t/func_time.test:
  Automatic merge
sql/ha_innodb.cc:
  Automatic merge
sql/mysql_priv.h:
  Automatic merge
mysql-test/r/rpl_multi_update.result:
  Automatic merge
mysql-test/t/rpl_error_ignored_table.test:
  Automatic merge
mysql-test/t/rpl_multi_update.test:
  Automatic merge
sql/slave.h:
  Automatic merge
sql/sql_base.cc:
  Automatic merge
sql/sql_db.cc:
  Automatic merge
sql/sql_insert.cc:
  Automatic merge
sql/structs.h:
  Automatic merge
sql/table.cc:
  Automatic merge
strings/longlong2str-x86.s:
  Automatic merge
strings/strings-x86.s:
  Automatic merge
support-files/my-medium.cnf.sh:
  Automatic merge
2004-05-05 17:05:24 +03:00
unknown
b30d0883b1 Merge miguel@bk-internal.mysql.com:/home/bk/mysql-4.1
into hegel.local:/home/miguel/bk/mysql-4.1


sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2004-05-05 10:55:39 -03:00
unknown
cf8463ac7b Fixes for prior commit
mysys/my_getsystime.c:
  Applied Sergei's fixes
sql/sql_prepare.cc:
  Fix prior commit
2004-05-05 10:54:11 -03:00
unknown
48260e9d92 InnoDB portability fix: new function os_file_set_eof()
innobase/include/os0file.h:
  Add os_file_set_eof()
innobase/os/os0file.c:
  Add os_file_set_eof()
innobase/srv/srv0srv.c:
  Replace chsize() or ftruncate() with os_file_set_eof()
sql/ha_innodb.cc:
  Replace my_chsize() with os_file_set_eof()
2004-05-05 15:54:28 +03:00
unknown
7d918f213e Portability fix 2004-05-05 14:40:44 +03:00
unknown
393ed84c9a a fix (Bug #3435: STDDEV|VARIANCE(constant) returns constant if no rows) 2004-05-05 16:06:01 +05:00
unknown
575541b9f7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


mysql-test/r/subselect.result:
  Auto merged
sql/item.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
tests/client_test.c:
  Auto merged
2004-05-05 12:40:59 +03:00
unknown
e75a26ba3f Delete Items created during Prepared Stat (memory leak bug) (Bug #3451)
sql/sql_parse.cc:
  Delete Items created during Prepared Stat (memory leak bug)
sql/sql_prepare.cc:
  Delete Items created during Prepared Stat (memory leak bug)
2004-05-05 12:40:33 +03:00
unknown
68d07cbcc4 Fixed crashing bug with alter table when table was in use (Bug #3643)
We didn't use 'only index' for tables of type 'const'. (Bug #3497)


mysql-test/r/func_str.result:
  New testfin
mysql-test/r/key.result:
  New test
mysql-test/r/key_primary.result:
  Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/r/null_key.result:
  Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/r/subselect.result:
  Update after "We didn't use 'only index' for tables of type 'const'" fix.
mysql-test/t/func_str.test:
  Updated bug texts
  Added test for conversion of long string value to integer (Bug #3472)
mysql-test/t/key.test:
  Test of key read with primary key (Bug #3497)
sql/item.cc:
  Added assert
sql/sql_base.cc:
  Fixed crashing bug with alter table when table was in use (Bug #3643)
sql/sql_load.cc:
  Indentation fixes
sql/sql_select.cc:
  We didn't use 'only index' for tables of type 'const'. (Bug #3497)
2004-05-05 12:31:17 +03:00
unknown
b33f8fa778 InnoDB: Truncate "<datadir>/innodb.status.<pid>" to its actual size
(Bug #3596)


innobase/srv/srv0srv.c:
  Truncate "<datadir>/innodb.status.<pid>" to its actual size (Bug #3596)
sql/ha_innodb.cc:
  Truncate "<datadir>/innodb.status.<pid>" to its actual size (Bug #3596)
2004-05-05 11:50:58 +03:00
unknown
ea646dce60 avoid using ndb tables in query cache
sql/ha_ndbcluster.h:
  fixed layout
  prohibit using query cache with ndb tables
sql/handler.h:
  new caching type
sql/sql_cache.cc:
  support of new caching type (caching prohibited)
2004-05-05 11:22:10 +03:00
unknown
aee9a54886 Merge marko@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/l/mysql-4.0
2004-05-05 10:15:43 +03:00
unknown
bddee0c170 Windows fixes for VC++ compiler compability
myisam/myisam_ftdump.c:
  VC++ compiler compability fix
mysys/my_getsystime.c:
  Applied Sergei's code for Windows (still subject to changes by him)
sql/handler.cc:
  VC++ compiler compability fix
sql/item_geofunc.cc:
  Removed non-used variable
sql/item_strfunc.cc:
  VC++ compiler compability fix
sql/opt_range.cc:
  VC++ compiler compability fix
sql/sql_insert.cc:
  VC++ compiler compability fix
sql/sql_lex.cc:
  VC++ compiler compability fix
sql/sql_parse.cc:
  VC++ compiler compability fix
sql/sql_prepare.cc:
  VC++ compiler compability fix
sql/sql_union.cc:
  Removed non-used variable and VC++ compiler compability fix
2004-05-05 02:59:17 -03:00
unknown
af847c22af Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1


sql/sql_union.cc:
  Auto merged
2004-05-04 23:05:37 +03:00
unknown
5bd7b50cf1 Fix for a multi table updates when one of the tables is not updated
but used in a nested query.
2004-05-04 23:04:05 +03:00
unknown
5c9f01a79b Manual merge of bugfix for Bug #1664.
sql/sql_prepare.cc:
  Auto merged
tests/client_test.c:
  Manual merge.
2004-05-04 19:13:18 +04:00
unknown
6ca757544b Fix for remaining issues described in Bug #1664
"mysql_send_long_data() API call is completely broken".

Now we are resetting some members (long_data_supplied/null_value...) of Item_param to its 
initial state after each execution of prepared statement. We also manipulating 
Item_param::maybe_null/null_value only via Item_param::set_* setters which makes code a bit 
more robust.


sql/item.cc:
  Now we are assuming that Item_param may be NULL until we know this fact exactly.
  Added non-empty implementation of Item_param::reset() method which should be used
  for restoring Item_param state after each statment execution. (We need to clear 
  long_data_supplied flag, we also clear some other Item_param members here since it
  makes code simpler.)
sql/item.h:
  Now Item_param::reset() method really does something.
sql/sql_prepare.cc:
  Now we are calling Item_param::reset() for each parameter after execution for resetting Item_param
  to initial state. So we no longer don't need Prepared_statement::long_data_flag. We also 
  set Item_param::null_value/maybe_null value in Item_param::set_* and reset() methods 
  instead of doing it explicitly in insert_params_* functions (this by the way lowers 
  probability that we will forget to update one of such functions).
tests/client_test.c:
  Added test for Bug#1664 "mysql_send_long_data() API call is broken".
2004-05-04 19:08:19 +04:00
unknown
40dba5a82f useless fixes for --report-password and --show-slave-auth-info (almost undocumented options),
just for beauty of truth.


sql/mysqld.cc:
  correcting sentence (even if option is not really usable,
  as it depends on report-user and report-password which are undocumented
  (and will stay like this)).
sql/slave.cc:
  report password when you must report password.
2004-05-04 16:35:31 +02:00
unknown
a1ec6140d2 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-05-04 15:49:22 +02:00
unknown
ed3f472a12 Fix for Bug#3357 "If the statement is long, the error message is trunc and important info is lost";
in hard-coded replication messages, always put small-length info (error codes, explanation of the error) at the beginning,
so that it is not cut by truncation if the query is very long (which happens if the query goes first).


sql/log_event.cc:
  in hard-coded replication messages, always put small-length info (error codes, explanation of the error) at the beginning,
  so that it is not cut by truncation if the query is very long (which happens if the query goes first).
2004-05-04 15:48:40 +02:00
unknown
a0c07c28ec Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-prep-4.1
2004-05-04 16:42:39 +03:00
unknown
aaff8391f5 repetable test replaced with inline function 2004-05-04 16:37:04 +03:00