Commit graph

3709 commits

Author SHA1 Message Date
unknown
68d7b26698 Fix for bug #4508 "CONVERT_TZ() function with new time zone as param crashes server".
Instead of trying to open time zone tables during calculation of CONVERT_TZ() function
or setting of @@time_zone variable we should open and lock them with the rest of 
statement's table (so we should add them to global table list) and after that use such 
pre-opened tables for loading info about time zones.


mysql-test/r/timezone2.result:
  Added test for bug #4508
mysql-test/t/timezone2.test:
  Added test for bug #4508
scripts/mysql_create_system_tables.sh:
  Added one more test time zone to time zone tables which is needed for test for bug #4508.
sql/item_create.cc:
  CONVERT_TZ() now is treated as special function.
sql/item_create.h:
  CONVERT_TZ() now is treated as special function.
sql/item_timefunc.cc:
  Item_func_convert_tz now uses list of pre-opened time zone tables instead of trying to
  open them ad-hoc. Also it avoid calling of current_thd.
sql/item_timefunc.h:
  Added comment describing special nature of CONVERT_TZ() function.
  Optimization: Added own fix_fields() method and tz_tables member for caching pointer
  to list of open time zone tables to Item_func_convert_tz class.
sql/lex.h:
  CONVERT_TZ() now is treated as special function.
sql/mysql_priv.h:
  Removed function which is no longer used.
sql/set_var.cc:
  Now my_tz_find() accepts list of pre-opened time zone tables as last argument 
  and no longer needs pointer to current THD.
sql/set_var.h:
  Exported sys_time_zone, which is now used in sql_yacc.yy for quick finding out if we are
  setting @@time_zone variable.
sql/sql_base.cc:
  Moved propagation of pointers to open tables from global list to local select lists to
  open_and_lock_tables(), also added implicit usage of time zone tables as condition for
  such propagation.
sql/sql_lex.cc:
  Added fake_time_zone_tables_list which is used to indicate that time zone tables are
  implicitly used in statement.
  st_select_lex_unit::create_total_list(): if time zone tables are implicitly used in
  statement add them to global tables list.
sql/sql_lex.h:
  Added LEX::time_zone_tables_used member which is used to indicate that time zone tables 
  are implicitly used in this statement (by pointing to fake_time_zone_table_list) and 
  for holding pointer to those tables after they've been opened.
sql/sql_parse.cc:
  We should also create global table list if statement uses time zone tables implicitly.
  Added initialization of LEX::time_zone_tables_used to mysql_query_init().
sql/sql_prepare.cc:
  We should also create global table list if statement uses time zone tables implicitly.
sql/sql_select.cc:
  Removed functions which are no longer used.
sql/sql_yacc.yy:
  CONVERT_TZ() and @@time_zone variable are handled in special way since they implicitly 
  use time zone tables.
sql/tztime.cc:
  Fix for bug #4508 "CONVERT_TZ() function with new time zone as param crashes server".
  If statement uses CONVERT_TZ() function or @@time_zone variable is set then it implicitly
  uses time zone tables. We need to open and lock such tables with all other tables of 
  such statement.
  
  All code responsible for opening table was removed from tz_load_from_db() and function was 
  renamed to tz_load_from_open_tables() (which uses list of pre-opened tables).
  We also have new functions for construction and initialization of table list of time
  zone tables.
  my_tz_find() now always require list of pre-opened time zone tables and no longer needs
  current THD. So we have to pre-open them in my_tz_init().
  Also now we try to open time zone tables only if they were found during startup.
sql/tztime.h:
  New function for construction of table list of time zone tables my_tz_get_table_list().
  Now my_tz_find() requires list of pre-pened time zone tables instead of current thread.
2004-08-10 12:42:31 +04:00
unknown
e74007fb7c Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into brandersnatch.localdomain:/home/dlenev/src/mysql-4.1-bg4756
2004-08-10 03:07:07 +04:00
unknown
91f20a16b8 cleanup
mysql-test/r/select_found.result:
  explain added
mysql-test/t/select_found.test:
  cleanup. 5000-char long line removed :)
sql/sql_select.cc:
  reverted
2004-08-07 23:18:13 +02:00
unknown
3a00469e4a Fix for bug #4491 "timestamp(19) doesn't work".
We should allow 19 as length of newly created TIMESTAMP fields.


mysql-test/r/type_timestamp.result:
  Added test of TIMESTAMP(19) support.
mysql-test/t/type_timestamp.test:
  Added test of TIMESTAMP(19) support.
sql/sql_parse.cc:
  add_field_to_list(): TIMESTAMP columns should also support 19 as length since it is
  length of 4.1 compatible representation.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-08-06 12:15:40 +04:00
unknown
52e0926ad0 Increase value of TimeBetweenWatchDogCheck to make it to start cluster on lowend machines.
mysql-test/ndb/ndb_config_2_node.ini:
  Increase TimeBetweenWatchDogCheck to 30000
2004-08-06 09:41:44 +02:00
unknown
1b0f0b0afc Fix for bug #4756 "STR_TO_DATE() returning bad results with AM/PM".
Added support of converion specifiers mentioned in manual but missing in code.


mysql-test/r/date_formats.result:
  Added tests of str_to_date() with new %T, %r and %V, %v conversion specifiers, and also 
  some other specifiers for which tests were missing previously.
mysql-test/t/date_formats.test:
  Added tests of str_to_date() and new %T, %r and %V, %v conversion specifiers, and also 
  some other specifiers for which tests were missing previously.
sql/item_timefunc.cc:
  Added support for %T, %r, %V, %v, %X, %x conversion specifiers to extract_date_time()
  function. Also simplified a bit calculation of dates from week number.
2004-08-06 10:01:29 +04:00
unknown
94a1e48232 BUG#4892 TRUNCATE TABLE returns error 156
Added NDBCLUSTER to table types which does not support generate. 
Added test case for truncate.


sql/handler.h:
  Add NDBCLUSTER to table types that does not support generate.
2004-08-04 11:28:36 +02:00
unknown
92498f81db BUG#4818 DELETE FROM tab LIMIT
Check if there are any operations pending that needs to be taken over to the updating/deleting transaction before closing the scan 


sql/ha_ndbcluster.cc:
  Check ops_pending if there are operations to take over before closing the scan
2004-08-04 10:54:42 +02:00
unknown
ea8ac8ab98 hang in dummy natural join (no common columns) Bug #4807 2004-08-02 11:12:11 +02:00
unknown
12bdc04b29 Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-08-01 16:35:35 +02:00
unknown
2919d44260 Fix mysql-test-run w.r.t NDB
"export A=var" is bash feature
instead do "A=var; export A"
2004-08-01 14:12:45 +02:00
unknown
d14a27fdad bug#4816. index search for NULL in blob 2004-08-01 13:26:01 +02:00
unknown
9ca47d047e BUG#4393, BUG#4356 - incorrect decimals in fix_length_and_dec() in some functions
mysql-test/mysql-test-run.sh:
  report failed test name
mysql-test/r/func_math.result:
  test results fixed
2004-07-31 22:39:10 +02:00
unknown
0ba0f4a9aa Bug fix for alter table and auto_increment 2004-07-31 12:00:12 +02:00
unknown
95da1ff0fc apply in SET PASSWORD same checks as in GRANT, to let only valid hashes through 2004-07-30 22:05:08 +02:00
unknown
5e3a68892a Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-07-30 14:25:18 +02:00
unknown
864405db7d no_auto_value_on_zero + alter table bug 2004-07-30 14:17:12 +02:00
unknown
f0f24adb38 Updated ps_6bdb.results.
mysql-test/r/ps_6bdb.result:
  Updated results.
2004-07-30 12:13:40 +02:00
unknown
7790856f1a Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-07-30 09:50:37 +02:00
unknown
e452548352 auto_value_on_zero bug test
mysql-test/r/auto_increment.result:
  bug test
mysql-test/t/auto_increment.test:
  bug test
sql/sql_base.cc:
  cleanup
2004-07-30 09:47:56 +02:00
unknown
3f636aa379 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into brandersnatch.localdomain:/home/dlenev/src/mysql-4.1-bg4492
2004-07-30 11:01:29 +04:00
unknown
9aa4a2d215 rpl_relayrotate.test requires InnoDB (because what we want to test is
if slave resumes at BEGIN).


mysql-test/t/rpl_relayrotate.test:
  require InnoDB (does not make sense without InnoDB)
2004-07-30 01:10:21 +02:00
unknown
2be153efbe Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-1717


client/mysqlbinlog.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2004-07-29 23:28:28 +02:00
unknown
88e3aead85 WL#1580: --start-datetime, --stop-datetime, --start-position (alias for --position) and --stop-position
options for mysqlbinlog, with a test file.
This enables user to say "recover my database to how it was this morning at 10:30"
(mysqlbinlog "--stop-datetime=2003-07-29 10:30:00").
Using time functions into client/ made me move them out of sql/ into sql-common/.
+ (small) fix for BUG#4507 "mysqlbinlog --read-from-remote-server sometimes
cannot accept 2 binlogs" (that is, on command line).


client/client_priv.h:
  new options for mysqlbinlog
client/mysqlbinlog.cc:
  WL#1580: --start-datetime, --stop-datetime, --start-position (alias for --position) and --stop-position.
  (small) fix for BUG#4507 "mysqlbinlog --read-from-remote-server sometimes
   cannot accept 2 binlogs".
include/my_time.h:
  importing time functions so that client/ files can use them.
include/mysql_time.h:
  importing time types so that client/ files can use them.
sql-common/my_time.c:
  importing time functions so that client/ files can use them.
sql/mysql_priv.h:
  moving time functions out of sql/ into sql-common/
sql/time.cc:
  moving time functions out of sql/ into sql-common/
sql/tztime.h:
  moving time functions out of sql/ into sql-common/
2004-07-29 23:25:58 +02:00
unknown
eab01edf4f Added test for fix of bug#3912 Auto increment not correctly initialised when table is altered 2004-07-29 14:02:40 +02:00
unknown
785a2eea8e Added ORDER BY to ensure same result on all setups/platforms 2004-07-29 13:32:50 +02:00
unknown
0cf30d26c2 Added order by to make the test output from ndb_basic and ndb_lock predicatble
mysql-test/r/ndb_basic.result:
  Added order by to some selects
mysql-test/r/ndb_lock.result:
  Added order by to some selects
mysql-test/t/ndb_basic.test:
  Added order by to some selects
mysql-test/t/ndb_lock.test:
  Added order by to some selects
2004-07-28 10:28:30 +02:00
unknown
a5e453e608 Fix for bug #4492.
TIMESTAMP columns should be unsigned to preserve compatibility with 4.0
(Or else InnoDB will return different internal TIMESTAMP values when user upgrades to 4.1).

Altough this fix will introduce problems with early 4.1 -> 4.1 upgrades (tables with 
TIMESTAMP field should be reloaded using mysqldump) it will allow easy 4.0 -> 4.1 
upgrade (which is more important since 4.1 is still beta).


mysql-test/r/metadata.result:
  TIMESTAMP should be UNSIGNED as in 4.0.
mysql-test/r/ps_2myisam.result:
  TIMESTAMP should be UNSIGNED as in 4.0.
mysql-test/r/ps_3innodb.result:
  TIMESTAMP should be UNSIGNED as in 4.0.
mysql-test/r/ps_4heap.result:
  TIMESTAMP should be UNSIGNED as in 4.0.
mysql-test/r/ps_5merge.result:
  TIMESTAMP should be UNSIGNED as in 4.0.
sql/field.cc:
  TIMESTAMP should be UNSIGNED to preserve compatiblity with 4.0.
  (Or else InnoDB will return different internal TIMESTAMP values when user upgrades to 4.1).
2004-07-28 10:49:21 +04:00
unknown
cc8920c8ff Merge
ndb/test/ndbapi/Makefile.am:
  SCCS merged
2004-07-27 13:02:50 +02:00
unknown
41f3a2dcf2 Merge
mysql-test/mysql-test-run.sh:
  Auto merged
ndb/src/ndbapi/Ndbif.cpp:
  Auto merged
ndb/src/common/mgmcommon/ConfigInfo.cpp:
  SCCS merged
2004-07-27 11:57:04 +02:00
unknown
5fbf11ba9b Merge mskold@build.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1-ndb


ndb/test/ndbapi/Makefile.am:
  Auto merged
sql/handler.cc:
  Auto merged
2004-07-27 09:59:26 +02:00
unknown
65ba6aa293 BUG#4717 - check for valid table names in ALTER TABLE ... RENAME 2004-07-26 10:52:40 +02:00
unknown
929d1a1616 Bug #4555 ALTER TABLE crashes mysqld with enum column collated utf8_unicode_ci 2004-07-23 19:10:06 +05:00
unknown
d5ff3eca53 Merge
sql/ha_ndbcluster.h:
  Auto merged
sql/ha_ndbcluster.cc:
  merge
2004-07-23 13:27:26 +02:00
unknown
cf4cfab216 WL#1791 Handler: support update of primary key 2004-07-22 18:35:51 +02:00
unknown
d1e7ef7927 ha_ndb blobs 2 2004-07-22 12:38:09 +02:00
unknown
9864327a61 ha_ndb blobs 2004-07-22 12:33:14 +02:00
unknown
1cd522ec04 Merge bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-07-21 19:17:50 +02:00
unknown
cb35648ec8 fixed ORDER BY ?
new tests to ensure that prepared statement *really* work
(and that MySQL not picks up some number from arbitrary location
that happens to match the parameter's value)


mysql-test/include/ps_query.inc:
  new tests to ensure that prepared statement *really* work
  (and that MySQL not picks up some number from arbitrary location
  that happens to match the parameter's value)
mysql-test/r/ps_2myisam.result:
  results updated
mysql-test/r/ps_3innodb.result:
  results updated
mysql-test/r/ps_4heap.result:
  results updated
mysql-test/r/ps_5merge.result:
  results updated
mysql-test/r/ps_6bdb.result:
  results updated
sql/sql_select.cc:
  don't shortcut - it backfires!
  (in particular - when itemptr is Item_param :)
2004-07-21 19:17:07 +02:00
unknown
8df1bf6b42 Final patch for WL#1600(warn if max_allowed_packet used)
mysql-test/r/func_str.result:
  test fixed
mysql-test/r/packet.result:
  test fixed
sql/item_geofunc.cc:
  error message fixed
sql/item_strfunc.cc:
  error message fixed
sql/share/czech/errmsg.txt:
  error message fixed
sql/share/danish/errmsg.txt:
  error message fixed
sql/share/dutch/errmsg.txt:
  error message fixed
sql/share/english/errmsg.txt:
  error message fixed
sql/share/estonian/errmsg.txt:
  error message fixed
sql/share/french/errmsg.txt:
  error message fixed
sql/share/german/errmsg.txt:
  error message fixed
sql/share/greek/errmsg.txt:
  error message fixed
sql/share/hungarian/errmsg.txt:
  error message fixed
sql/share/italian/errmsg.txt:
  error message fixed
sql/share/japanese/errmsg.txt:
  error message fixed
sql/share/korean/errmsg.txt:
  error message fixed
sql/share/norwegian-ny/errmsg.txt:
  error message fixed
sql/share/norwegian/errmsg.txt:
  error message fixed
sql/share/polish/errmsg.txt:
  error message fixed
sql/share/portuguese/errmsg.txt:
  error message fixed
sql/share/romanian/errmsg.txt:
  error message fixed
sql/share/russian/errmsg.txt:
  error message fixed
sql/share/serbian/errmsg.txt:
  error message fixed
sql/share/slovak/errmsg.txt:
  error message fixed
sql/share/spanish/errmsg.txt:
  error message fixed
sql/share/swedish/errmsg.txt:
  error message fixed
sql/share/ukrainian/errmsg.txt:
  error message fixed
2004-07-21 21:27:45 +05:00
unknown
c5fc0d433a Merging
mysql-test/r/func_str.result:
  Auto merged
sql/item_geofunc.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
2004-07-21 19:10:37 +05:00
unknown
d8a914d431 ndb_lock.test, ndb_lock.result:
new file
2004-07-21 12:06:46 +02:00
unknown
49d6b187e4 Added test for bug#4595 2004-07-20 14:50:22 +02:00
unknown
4b3ee02efe oops, forgot to checkin... 2004-07-20 11:13:23 +02:00
unknown
8818cd9b65 results fixed after merge
mysql-test/t/create_select_tmp.test:
  --disable_warnings
mysql-test/t/rpl_drop.test:
  --disable_warnings
2004-07-20 11:00:10 +02:00
unknown
eee5f15b92 manual merged (blame me!)
Build-tools/Do-compile:
  Auto merged
Docs/Makefile.am:
  Auto merged
innobase/btr/btr0cur.c:
  Auto merged
innobase/include/lock0lock.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/include/srv0srv.h:
  Auto merged
innobase/include/sync0arr.h:
  Auto merged
innobase/include/trx0trx.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
mysql-test/r/innodb.result:
  to be fixed after the merge
2004-07-20 00:53:24 +02:00
unknown
80e15e2dd4 Added new test/result file ndb_types to test creating tables with different column types in NDB 2004-07-19 11:38:28 +02:00
unknown
4baaca9560 BUG#4511 Made Discless deprecated
mysql-test/mysql-test-run.sh:
  Change to diskless
mysql-test/ndb/ndb_config_2_node.ini:
  Change to diskless
mysql-test/ndb/ndbcluster.sh:
  Change to diskless
ndb/src/common/mgmcommon/ConfigInfo.cpp:
  Making Discless deprecated, so it still can be used but a warning will be printed if used.
  Adde possibilty to transform a value of type ConfigInfo::BOOL, neede for depicated Discless
2004-07-19 10:50:50 +02:00
unknown
149b70dc57 Removed timeout tests 2004-07-19 10:31:55 +02:00
unknown
d590b04708 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/mysql-4.1-ndb


mysql-test/mysql-test-run.sh:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
2004-07-19 09:09:40 +02:00