Commit graph

5252 commits

Author SHA1 Message Date
unknown
a6b1546676 Item::fix_field need correct pointer on item reference to chnge it if itis need, so support of correct item address added to SP commands (BUG#5963)
some optimisation of IF/NOT IF ptomised to Pem


mysql-test/r/sp.result:
  test for bug#5963
mysql-test/t/sp.test:
  test for bug#5963
sql/item.cc:
  new method which return reference on Item for SP variables support
sql/item.h:
  comment fixed
  method added
sql/sp_head.cc:
  preparation of item made separate function
  we do not need new constant Item to check IF/IF NOT
  support of passing correct address of item for fix_fields method
sql/sp_rcontext.cc:
  support of Item address passing to fix_fields
sql/sp_rcontext.h:
  support of correct address passing to fix_fields
sql/sql_class.cc:
  support of correct item address passing to fix_field
2005-05-09 01:59:10 +03:00
unknown
930644731d Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/root/mysql-5.0


sql/sql_select.cc:
  Auto merged
2005-05-06 11:48:54 +05:00
unknown
8a27426fcd Tests and results fixed with last precision/decimal related modifications
mysql-test/r/case.result:
  test result fixed
mysql-test/r/create.result:
  test result fixed
mysql-test/r/distinct.result:
  test result fixed
mysql-test/r/func_group.result:
  test result fixed
mysql-test/r/func_op.result:
  test result fixed
mysql-test/r/group_by.result:
  test result fixed
mysql-test/r/metadata.result:
  test result fixed
mysql-test/r/olap.result:
  test result fixed
mysql-test/r/ps_2myisam.result:
  test result fixed
mysql-test/r/ps_3innodb.result:
  test result fixed
mysql-test/r/ps_4heap.result:
  test result fixed
mysql-test/r/ps_5merge.result:
  test result fixed
mysql-test/r/ps_6bdb.result:
  test result fixed
mysql-test/r/ps_7ndb.result:
  test result fixed
mysql-test/r/select.result:
  test result fixed
mysql-test/r/sp.result:
  test result fixed
mysql-test/r/type_decimal.result:
  test result fixed
mysql-test/r/type_newdecimal.result:
  test result fixed
mysql-test/r/union.result:
  test result fixed
mysql-test/r/variables.result:
  test result fixed
mysql-test/t/func_group.test:
  test modified
mysql-test/t/olap.test:
  test modified
mysql-test/t/type_decimal.test:
  test modified
2005-05-06 01:01:39 +05:00
unknown
481e743bd0 making rpl_sp.test hostname-independent
mysql-test/t/rpl_sp.test:
  making test hostname-independent (don't know why the problem didn't appear on my machine)
mysql-test/r/rpl_sp.result:
  result update
2005-05-05 18:28:54 +02:00
unknown
d8cf7e0133 Bug#9509 Optimizer: wrong result after AND with latin1_german2_ci
We cannot propagate constants with tricky collations.
2005-05-05 21:13:57 +05:00
unknown
636043878d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into quadita2.mysql.com:/nfstmp1/guilhem/mysql-5.0-4ita
2005-05-05 14:40:10 +02:00
unknown
2e18548263 Post merge fixes (merge of Bug#9777) 2005-05-05 16:31:18 +04:00
unknown
af12ff6568 Approximative fixes for BUG#2610,2611,9100 i.e. WL#2146 binlogging/replication of routines (stored procs and functions).
Approximative, because it's using our binlogging way (what we call "query"-level) and this is not as good as record-level binlog (5.1) would be. It imposes several
  limitations to routines, and has caveats (which I'll document, and for which the server will try to issue errors but that is not always possible).
  Reason I don't propagate caller info to the binlog as planned is that on master and slave
  users may be different; even with that some caveats would remain.


mysql-test/mysql-test-run.sh:
  In the testsuite we know what we do, we are not creating nasty routines, and breaking binlog is ok except in rpl_sp.
mysql-test/r/blackhole.result:
  Updating results now that 4.1 has been merged
mysql-test/valgrind.supp:
      Some suppressions for Valgrind (useful on my machine Suse 9.1);
      this is just adding to the already existing suppressions of pthread and dl.
sql/item_func.cc:
      Don't binlog the substatements when executing a function. If the function
      is declared to modify data and does not complete, warning "broken binlog".
      Note that SELECT myfunc() will not be binlogged even if myfunc() updates data (will be documented);
      but INSERT INTO t VALUES(myfunc()) will be binlogged (what decides is if the caller
      gets binlogged; the function changes nothing to binlogging).
sql/log_event.cc:
      Just making functions which can be re-used when we binlog more strings
      in status_vars in Query_log_event (e.g. one day "user", "host").
sql/log_event.h:
  comment
sql/mysql_priv.h:
      --log-bin-trust-routine-creators
sql/mysqld.cc:
      --log-bin-trust-routine-creators
sql/set_var.cc:
      --log-bin-trust-routine-creators
sql/share/errmsg.txt:
  error messages to warn about problems with routines and binlog
sql/slave.cc:
      If in a routine, replication table inclusion/exclusion rules always answer "replicate!" (see comment in code).
sql/sp.cc:
      If binlog is on: errors if one wants to create a non-deterministic update routine
      (repeatability problem - note that the test is not perfect for functions) or does not have SUPER (because routines can easily
      be made to destroy slave's data with just CREATE ROUTINE and EXECUTE priv on master).
      --log-bin-trust-routine-creators removes these errors.
      Binlogging of CREATE PROCEDURE|FUNCTION.
sql/sql_acl.cc:
      No thd==0 in tables_ok().
sql/sql_parse.cc:
      Binlogging of CALL (and not of the substatements of the SP).
      If SP returns error, we don't binlog it (see comment); we push warning in this case.
      Binlogging of ALTER|DROP PROCEDURE|FUNCTION with safety messages.
2005-05-05 14:20:53 +02:00
unknown
7f33809731 Manual merge
BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
include/my_sys.h:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/t/ndb_restore.test:
  Auto merged
ndb/test/src/NDBT_ResultRow.cpp:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
2005-05-05 13:47:09 +04:00
unknown
c758512a91 A fix and test case for Bug#9777 " Empty set returned by Prepared Statement when it
should return a non empty one"
(see comments for the changed files for details).


mysql-test/r/ps.result:
  A test case for Bug#9777: tests results fixed.
mysql-test/t/ps.test:
  A test case for Bug#9777
sql/item.cc:
  A fix for Bug#9777: when creating a constant item from within 
  Item_int_with_ref::new_item, create the item by value, not by name.
  This should work with prepared statements placeholders.
  Item_int_with_ref is a special optimization case used
   when we compare datetime constants with datetime value.
  Converting the item to integer early is OK as it is in line
  with the purpose of Item_int_with_ref - to speed up comparison by 
  using integers.
  Minor cleanups.
sql/item.h:
  Declaration for Item_int_with_ref::new_item
2005-05-05 12:55:09 +04:00
unknown
8736d8ac06 logging_ok:
Logging to logging@openlogging.org accepted
NDBT_ResultRow.cpp, ndb_restore.test, ndb_restore.result:
  BUG#10287


mysql-test/r/ndb_restore.result:
  BUG#10287
mysql-test/t/ndb_restore.test:
  BUG#10287
ndb/test/src/NDBT_ResultRow.cpp:
  BUG#10287
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-04 10:16:03 +02:00
unknown
3aa89efcdd Manual merge of Bug#9096 2005-05-03 19:32:29 +04:00
unknown
b883aebae0 Merge mysql.com:/opt/local/work/mysql-4.1-root
into mysql.com:/opt/local/work/mysql-4.1-9096-fresh


sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
2005-05-03 12:49:22 +04:00
unknown
9fcda7fcc5 A fix and test case for Bug#9096 "select doesn't return all matched
records if prepared statements is used".
This fix changes equality evaluation method of basic constants from
by-name to by-value, thus effectively enabling use of parameter markers
in some optimizations (constants propagation, evaluation of possible
keys for query).


mysql-test/r/ps.result:
  Test results for the test case for Bug#9096
mysql-test/t/ps.test:
  A short test case for Bug#9096 "select doesn't return all matched records if
   prepared statements is used". The is enough to reproduce the
  glitch in update_ref_and_keys causing the bug to occur.
sql/item.cc:
  Implement by-value equality evaluation of basic constants.
  This is needed to work with Item_param values. Until now
  Item_param was compared with other items by its name, which is always "?".
  The bug at hand showed up when an integer
  constant was created from one parameter marker (with value 200887 and
   name "?") and then compared by-name with another parameter marker
  (with value 860 and name "?"). True returned by this comparison resulted
  in a wrong table access method used to evaluate the query.
  Implement Item_param methods needed to emulate "basic constant" mode at 
  full.
sql/item.h:
  Change declaration of basic_const_item(): now it also widens its 
  argument from const Item * to Item * if the argument is a basic constant.
  Declare eq() for all basic constatns, as long as now they 
  are compared by value, not by name. Each constant needs its own
  comparison method.
  Declarations of Item_param methods needed to fully emulate 
  a basic constant when parameter value is set.
sql/item_func.cc:
  Fix wrong casts.
2005-05-03 12:47:27 +04:00
unknown
2d998575d3 Merge mysql.com:/home/jimw/my/mysql-5.0-7293
into mysql.com:/home/jimw/my/mysql-5.0-clean
2005-05-02 10:20:54 -07:00
unknown
41e7a9709d Clean up merge from 4.1
configure.in:
  Auto merged
extra/my_print_defaults.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/lowercase_table.result:
  Auto merged
mysql-test/r/query_cache.result:
  Mege results
mysql-test/t/lowercase_table.test:
  Merge tests
mysql-test/t/query_cache.test:
  Merge tests
mysys/default.c:
  Merge from 4.1
sql/sql_cache.cc:
  Merge
sql/sql_parse.cc:
  Merge from 4.1
sql/sql_table.cc:
  Merge
tests/mysql_client_test.c:
  Merge
2005-05-02 10:19:37 -07:00
unknown
5df9135be7 Merge mysql.com:/home/jimw/my/mysql-4.1-9761
into mysql.com:/home/jimw/my/mysql-4.1-clean
2005-05-02 08:12:03 -07:00
unknown
465ba81afa Merge bk-internal:/home/bk/mysql-4.1
into mysql.com:/home/jimw/my/mysql-4.1-clean


configure.in:
  Auto merged
2005-05-02 08:05:58 -07:00
unknown
9b512475fc Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


Makefile.am:
  Auto merged
client/mysqladmin.cc:
  Auto merged
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-05-01 23:10:55 +02:00
unknown
a6acc4462c Merge with 4.1
BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
include/config-win.h:
  Auto merged
include/my_global.h:
  Auto merged
mysql-test/r/drop.result:
  Auto merged
mysys/default.c:
  Auto merged
mysys/mf_keycache.c:
  Auto merged
sql/field.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
  Auto merged
mysql-test/r/cast.result:
  Merge
mysql-test/t/cast.test:
  Merge
sql/sql_insert.cc:
  Merge
sql/sql_select.cc:
  Merge
2005-04-30 09:46:08 +03:00
unknown
66bea0de15 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/handler.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
2005-04-30 03:46:38 +03:00
unknown
3b6043870d Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/sql_select.cc:
  Auto merged
2005-04-30 03:45:12 +03:00
unknown
ac82a2d5eb Setting a variable to CAST(NULL as X) set the result type of the variable to X. (Bug #6598)
mysql-test/r/bigint.result:
  Test to show show that the parser threats big longlong values as unsigned
mysql-test/r/user_var.result:
  Test of CAST(NULL as SIGNED/UNSIGNED)
mysql-test/t/bigint.test:
  Test to show show that the parser threats big longlong values as unsigned
mysql-test/t/user_var.test:
  Test of CAST(NULL as SIGNED/UNSIGNED)
sql/item_func.cc:
  Setting a variable to CAST(NULL as X) set the result type of the variable to X. (Bug #6598)
  Setting a variable to NULL doesn't change the old result type.
sql/item_func.h:
  Detect setting a variable to NULL
sql/unireg.cc:
  Safety fix
2005-04-30 03:14:42 +03:00
unknown
927d747a21 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


configure.in:
  Auto merged
2005-04-29 19:31:56 +02:00
unknown
65d0de3b7b Manually resolve merge
mysql-test/r/query_cache.result:
  Resolve merge
mysql-test/t/query_cache.test:
  Resolve merge
2005-04-29 08:46:03 -07:00
unknown
90110b8429 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into deer.(none):/home/hf/work/mysql-5.0.spaerrs
2005-04-29 20:26:11 +05:00
unknown
1df25ccdac Fix for #6553 and #8776 (no errors on bad spatial data)
mysql-test/r/gis-rtree.result:
  test result fixed
mysql-test/r/gis.result:
  test result fixed
mysql-test/t/gis-rtree.test:
  test case fixed
mysql-test/t/gis.test:
  test case added
sql/field.cc:
  error messages launched now when we try to put bad spatial
  data in the GEOMETRY field
sql/field.h:
  interface fixed
sql/item_geofunc.cc:
  bad_data sign now instead of NULL now returned from
  Item_geometry_from_text::val_str
sql/share/errmsg.txt:
  error message added
sql/spatial.cc:
  bad_geometry data instance
sql/spatial.h:
  bad_geometry_data declaration
sql/sql_base.cc:
  messages now created in store_* function
2005-04-29 20:23:02 +05:00
unknown
97b0821462 CAST(string_argument AS UNSIGNED) didn't work for big integers above the signed range. (Bug #7036)
Produce warnings of wrong cast of strings to signed/unsigned.
Don't block not resolved IP's if DNS server is down (Bug #8467)
Fix compiler problems with MinGW (Bug #8872)


configure.in:
  Fix compiler problems with MinGW (Bug #8872)
include/config-win.h:
  Fix compiler problems with MinGW (Bug #8872)
include/my_global.h:
  Fix compiler problems with MinGW (Bug #8872)
mysql-test/r/cast.result:
  Test for cast to signed/unsigned outside of range (Bug #7036)
mysql-test/t/cast.test:
  Test for cast to signed/unsigned outside of range (Bug #7036)
mysys/default.c:
  Cleanup (combine identical code). 
  Done mainly by Jani
sql/field.h:
  Added cast_to_int_type() to ensure that enums are casted as numbers
sql/hostname.cc:
  Don't block not resolved IP's if DNS server is down (Bug #8467)
sql/item.h:
  Added cast_to_int_type() to ensure that enums are casted as numbers
sql/item_func.cc:
  CAST(string_argument AS UNSIGNED) didn't work for big integers above the
  signed range. (Bug #7036)
  Produce warnings of wrong cast of strings to signed/unsigned
sql/item_func.h:
  CAST(string_argument AS UNSIGNED) didn't work for big integers above the
  signed range. (Bug #7036)
2005-04-29 17:03:34 +03:00
unknown
d937adf967 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/mysql-4.1
2005-04-29 11:56:38 +02:00
unknown
ae587036bc Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/mysql-5.0


BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Auto merged
configure.in:
  Auto merged
2005-04-29 11:49:54 +02:00
unknown
cfd042108a Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug9821


sql/sql_parse.cc:
  Auto merged
2005-04-29 02:52:20 +04:00
unknown
ef3e9e1cff Fix 'CREATE TABLE ... LIKE ...' when lower_case_table_names
is set on case-sensitive file systems and the source table
was specified in something other than lowercase. (Bug #9761)


mysql-test/r/lowercase_table.result:
  Add results
mysql-test/t/lowercase_table.test:
  Regression test for Bug #9761
sql/sql_table.cc:
  When lower_case_table_names is set, make sure to look for
  the source table using a lowercase filename.
2005-04-28 15:30:42 -07:00
unknown
b318122ce6 Add regression test for calling SOUNDEX() within stored procedure.
The bug appears to have already been fixed. (Bug #7293)


mysql-test/r/sp.result:
  Add results for new test
mysql-test/t/sp.test:
  Add regression test for bug 7293
2005-04-28 14:46:54 -07:00
unknown
5192a1a368 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug9298-merge
2005-04-28 21:05:26 +04:00
unknown
e26a93e999 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug9298
2005-04-28 19:58:52 +04:00
unknown
c3e1ccada2 A test case for Bug#5673 "Rounding problem in 4.0.21 inserting decimal
value into a char field": the patch submitted for the bug a while
ago has never been reviewed or approved to push into 4.0. Decimal
support in 5.0 resolves the issue.
Adding the test case and closing the bug report.


mysql-test/r/type_decimal.result:
  Bug#5673: test results fixed.
mysql-test/t/type_decimal.test:
  A test case for Bug#5673 "Rounding problem in 4.0.21 inserting decimal 
  value into a char field"
2005-04-28 13:06:36 +04:00
unknown
c53b0c4398 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/mysql-4.1
2005-04-28 10:57:08 +02:00
unknown
a5f4b569ab Merge
BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Auto merged
ndb/include/ndbapi/NdbDictionary.hpp:
  Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  Auto merged
2005-04-28 10:28:56 +02:00
unknown
df0a4ed64e Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/sql_insert.cc:
  Auto merged
2005-04-28 00:41:39 +03:00
unknown
cde34dfbf3 Little different behaviour in 5.0 and merge with new tests required these changes
mysql-test/r/archive.result:
  Changed order of tests so that the are before the unpredictable INSERT DELAYED
  Warning is produced during the rename
mysql-test/t/archive.test:
  Changed order of tests so that the are before the unpredictable INSERT DELAYED
  Warning is produced during the rename
2005-04-27 22:02:26 +02:00
unknown
57d9c6d077 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into neptunus.(none):/home/msvensson/mysql/mysql-4.1


configure.in:
  Auto merged
2005-04-27 21:40:11 +02:00
unknown
8d22538041 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug9298
2005-04-27 22:51:02 +04:00
unknown
756d5da03f Merge mysql.com:/home/psergey/mysql-4.1-bug9298
into mysql.com:/home/psergey/mysql-5.0-bug9298-merge


mysql-test/r/group_by.result:
  Auto merged
sql/protocol.cc:
  Auto merged
2005-04-27 22:49:42 +04:00
unknown
758f5d0a59 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into neptunus.(none):/home/msvensson/mysql/mysql-5.0


ndb/src/ndbapi/ndberror.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
2005-04-27 18:28:57 +02:00
unknown
27a6a81464 Fix for avoiding gettin Invalid schema object version when doing local changes 2005-04-27 18:17:41 +02:00
unknown
2ea087205e Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0


sql/item_func.cc:
  Auto merged
2005-04-27 16:37:09 +02:00
unknown
5c44e1acfe Post-review fixes of the patch for BUG#8408: Stored procedure crash if function contains SHOW
(Review on irc by monty)


mysql-test/r/sp-error.result:
  Renamed a procedure and function to avoid confusion
mysql-test/t/sp-error.test:
  Renamed a procedure and function to avoid confusion
sql/item_func.cc:
  Corrected (and better) way to set/reset the client cap. flag in Item_func_sp::execute()
sql/share/errmsg.txt:
  Changed the ER_SP_BADSELECT error; more accurate, and includes the procedure name.
sql/sql_parse.cc:
  Include the procedure name in the new error message.
2005-04-27 16:35:49 +02:00
unknown
a082303fe1 after-merge fix
mysql-test/r/func_math.result:
  after merge fix:
  the test should be added after we have new hf's pm code pushed.
mysql-test/t/func_math.test:
  after merge fix:
  the test should be added after we have new hf's pm code pushed.
2005-04-27 19:06:47 +05:00
unknown
feff6b6a59 merging
ndb/src/ndbapi/ndberror.c:
  Auto merged
sql/item_func.cc:
  ul used, as hf said he has a patch for this code.
2005-04-27 19:00:27 +05:00
unknown
77d8d716b4 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b9803
2005-04-27 17:20:29 +05:00