Commit graph

7347 commits

Author SHA1 Message Date
unknown
dc44851352 Fix for BUG#5686 - #1034 - Incorrect key file for table - only utf8
myisam/ft_parser.c:
  word->len calculation correction.
mysql-test/r/fulltext.result:
  Test case for bug#5686.
mysql-test/t/fulltext.test:
  Test case for bug#5686.
2005-11-12 11:25:14 +04:00
unknown
1c677f8c55 Fixes bug #14569. When no db is selected as current and we do create procedure db.sp()...
we changing current db temporarily and restore it when sp is created. however thd->db
in this case becomes empty string rather than NULL and so all checks of thd->db == NULL 
will be false. So if after this we'll issue create procedure sp2()... without specifying
db it will succeed and create sp with db=NULL, which causes mysqldto crash on 
show procedure status statement.

This patch fixes the problem.


mysql-test/r/sp-error.result:
  Result for bug #14569.
mysql-test/t/sp-error.test:
  Test for bug #14569.
sql/sql_db.cc:
  Fixes bug #14569. When no db is selected as current and we do create procedure db.sp()...
  we changing current db temporarily and restore it when sp is created. however thd->db
  in this case becomes empty string rather than NULL and so all checks of thd->db == NULL 
  will be false. This patch fixes this issue.
sql/sql_parse.cc:
  Fixes bug #14569. Reverted from initial patch to check thd->db for null values only.
2005-11-11 21:01:48 +03:00
unknown
5ae3b47cd9 Merge mysql.com:/usr/local/bk/mysql-5.0
into  mysql.com:/usr/home/pem/bug14723/mysql-5.0


sql/sp_head.cc:
  Auto merged
2005-11-11 18:12:40 +01:00
unknown
56f43d9d02 Fix bug #13622 Wrong view .frm created if some field's alias contain \n
View .frm parser assumes that query string will take only 1 line, with \n in
aliases query stringmay take several lines thus produces bad .frm file.

'query' parameter type changed from 'string' to 'escaped string'


sql/sql_view.cc:
  Fix bug #13622 \n in column alias results in broken .frm
  'query' parameter type changed to 'escaped string'
mysql-test/r/view.result:
  Test case for bug #13622 Wrong view .frm created if some field's alias contain \n
mysql-test/t/view.test:
  Test case for bug #13622 Wrong view .frm created if some field's alias contain \n
2005-11-11 20:03:32 +03:00
unknown
425207c938 Fixed BUG#14723: Dumping of stored functions seems to cause corruption
in the function body
  Changed the way the end of query was found from the lex state.
  The routine body was not extracted correctly when using the
  /*!version ... */ wrapper (in dump files); for some types of routines
  (e.g. with a label at the first begin), the trailing "*/" was not skipped.


mysql-test/r/sp.result:
  New test case for BUG#14723.
mysql-test/t/sp.test:
  New test case for BUG#14723.
sql/sp_head.cc:
  Changed the way the end of the definition and body is found from the lex state.
  In the case of /*!version */ wrappers we must take the trailing " */" into account.
2005-11-11 11:10:52 +01:00
unknown
b10c7d60bd Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into  mysql.com:/home/timka/mysql/src/5.0-bug-14662
2005-11-11 12:10:19 +02:00
unknown
26cce41b72 Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into  mysql.com:/home/timka/mysql/src/5.0-bug-14662
2005-11-11 11:41:21 +02:00
unknown
9a0da055fd Fix for BUG#14662: view column in ORDER BY considered ambiguous if SELECT contains
the same column as an aliased and as a non-aliased column.

The problem was that Item_direct_view_ref::eq() was first comparing view columns
by name, and in this case the name of one of them is different since it is aliased.


mysql-test/r/select.result:
  Added test for BUG#14662.
mysql-test/t/select.test:
  Added test for BUG#14662.
sql/item.cc:
  Changed the way view column refenreces are compared. Two view columns are
  equal if they resolve to the same result field of a view.
2005-11-11 11:40:35 +02:00
unknown
534275921e Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail
for invalid view
 Permit SHOW CREATE VIEW, SHOW CREATE TABLE, and retrieval of metadata from
 information_schema for invalid views


mysql-test/r/information_schema.result:
  Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail 
                    for invalid view
   test case
mysql-test/t/information_schema.test:
  Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail 
                    for invalid view
   test case
2005-11-11 13:39:46 +04:00
unknown
986bc3fbe6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alik/MySQL/devel/5.0-wl2818
2005-11-11 00:57:36 +03:00
unknown
2ee2747bd2 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alik/MySQL/devel/5.0-wl2818


mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/share/errmsg.txt:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_trigger.cc:
  Auto merged
mysql-test/r/rpl_sp.result:
  Manual merge.
2005-11-10 22:48:00 +03:00
unknown
7dbea7df27 WL#2818 (Add creator to the trigger definition for privilege
checks on trigger activation)


mysql-test/r/information_schema.result:
  Update result file: a new column DEFINER has been added to
  INFORMATION_SCHEMA.TRIGGERS.
mysql-test/r/mysqldump.result:
  Update result file: a new column DEFINER has been added to
  INFORMATION_SCHEMA.TRIGGERS.
mysql-test/r/rpl_ddl.result:
  Update result file: a new column DEFINER has been added to
  INFORMATION_SCHEMA.TRIGGERS.
mysql-test/r/rpl_sp.result:
  Update result file: a new clause DEFINER has been added to
  CREATE TRIGGER statement.
mysql-test/r/rpl_trigger.result:
  Results for new test cases were added.
mysql-test/r/skip_grants.result:
  Error message has been changed.
mysql-test/r/trigger.result:
  Added DEFINER column.
mysql-test/r/view.result:
  Error messages have been changed.
mysql-test/r/view_grant.result:
  Error messages have been changed.
mysql-test/t/mysqldump.test:
  Drop created procedure to not affect further tests.
mysql-test/t/rpl_trigger.test:
  Add tests for new column in information schema.
mysql-test/t/skip_grants.test:
  Error tag has been renamed.
mysql-test/t/view.test:
  Error tag has been renamed.
mysql-test/t/view_grant.test:
  Error tag has been changed.
sql/item_func.cc:
  Fix typo in comments.
sql/mysql_priv.h:
  A try to minimize copy&paste:
    - introduce operations to be used from sql_yacc.yy;
    - introduce an operation to be used from trigger and
      view processing code.
sql/share/errmsg.txt:
  - Rename ER_NO_VIEW_USER to ER_MALFORMED_DEFINER in order to
    be shared for view and trigger implementations;
  - Fix a typo;
  - Add a new error code for trigger warning.
sql/sp.cc:
  set_info() was split into set_info() and set_definer().
sql/sp_head.cc:
  set_info() was split into set_info() and set_definer().
sql/sp_head.h:
  set_info() was split into set_info() and set_definer().
sql/sql_acl.cc:
  Add a new check: exit from the cycle if the table is NULL.
sql/sql_lex.h:
  - Rename create_view_definer to definer, since it is used for views
    and triggers;
  - Change st_lex_user to LEX_USER, since st_lex_user is a structure.
    So, formally, it should be "struct st_lex_user", which is longer
    than just LEX_USER;
  - Add trigger_definition_begin.
sql/sql_parse.cc:
  - Add a new check: exit from the cycle if the table is NULL;
  - Implement definer-related functions.
sql/sql_show.cc:
  Add DEFINER column.
sql/sql_trigger.cc:
  Add DEFINER support for triggers.
sql/sql_trigger.h:
  Add DEFINER support for triggers.
sql/sql_view.cc:
  Rename create_view_definer to definer.
sql/sql_yacc.yy:
  Add support for DEFINER-clause in CREATE TRIGGER statement.
  
  Since CREATE TRIGGER and CREATE VIEW can be similar at the start,
  yacc is unable to distinguish between them. So, had to modify both
  statements in order to make it parsable by yacc.
mysql-test/r/trigger-compat.result:
  Result file for triggers backward compatibility test.
mysql-test/r/trigger-grant.result:
  Result file of the test for WL#2818.
mysql-test/t/trigger-compat.test:
  Triggers backward compatibility test: check that the server
  still can load triggers w/o definer attribute and modify
  tables with such triggers (add a new trigger, etc).
mysql-test/t/trigger-grant.test:
  Test for WL#2818 -- check that DEFINER support in triggers
  works properly
2005-11-10 22:25:03 +03:00
unknown
1c30627bdf Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug4-5.0
2005-11-10 21:16:56 +02:00
unknown
3d42cd8deb Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/mysql_src/mysql-5.0
2005-11-10 19:17:52 +01:00
unknown
b861f198bc Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug4-5.0
2005-11-10 19:38:00 +02:00
unknown
7491463790 Merge mysql.com:/home/mysql_src/mysql-5.0-release
into  mysql.com:/home/mysql_src/mysql-5.0
2005-11-10 18:14:07 +01:00
unknown
3bb367f282 Merge mysqldev@production.mysql.com:my/mysql-5.0-release
into  mysql.com:/home/mysql_src/mysql-5.0-release
2005-11-10 17:53:09 +01:00
unknown
5d9c8e9543 WL#2971 "change log-bin-trust-routine-creators=0 to apply only to functions".
Indeed now that stored procedures CALL is not binlogged, but instead the invoked substatements are,
the restrictions applied by log-bin-trust-routine-creators=0 are superfluous for procedures.
They still need to apply to functions where function calls are written to the binlog (for example as "DO myfunc(3)").
We rename the variable to log-bin-trust-function-creators but allow the old name until some future version (and issue a warning if old name is used).


mysql-test/mysql-test-run.pl:
  update to new option name
mysql-test/mysql-test-run.sh:
  update to new option name
mysql-test/mysql_test_run_new.c:
  update to new option name
mysql-test/r/rpl_sp.result:
  result update
mysql-test/t/rpl_sp-slave.opt:
  we need to skip this error to not hit BUG#14769
mysql-test/t/rpl_sp.test:
  Test update:
  1) as log-bin-trust-routine-creators now affects only functions, the testing of this option, which was
  mainly done on procedures, is moved to functions
  2) cleanup is simplified; and instead of many SHOW BINLOG EVENTS we do a big one in the end, which is more
  maintainable.
  3) we test a few more function and procedures cases to see how they replicate.
  4) removing out-of-date comments
sql/item_func.cc:
  This warning is wrong since binlogging of functions was changed in August. If a function fails
  in the middle, it will be binlogged with its error code (i.e. properly).
sql/mysql_priv.h:
  variable name changed
sql/mysqld.cc:
  option name changes. A precision about --read-only.
sql/set_var.cc:
  a new class sys_var_trust_routine_creators to be able to issue a "this is a deprecated variable" warning if used.
sql/set_var.h:
  new class to be able to issue a "this is a deprecated variable" warning if used.
sql/share/errmsg.txt:
  routine -> function
sql/sp.cc:
  log-bin-trust-routine-creators now applies only to functions.
sql/sql_parse.cc:
  1) sending ER_FAILED_ROUTINE_BREAK_BINLOG is wrong since August as we don't binlog CALL anymore but instead binlog the substatements;
  the clear_error() goes away too as it was necessary only when we created a binlog event from the "CALL" statement.
  2) log-bin-trust-routine-creators now applies only to functions.
sql/sql_trigger.cc:
  comments.
2005-11-10 17:50:51 +01:00
unknown
3395608816 Merge bk@192.168.21.1:mysql-5.0
into mysql.com:/home/hf/work/mysql-5.0.14268
2005-11-10 19:54:38 +04:00
unknown
0c97fbef01 Fix for bug #14822: Test "mysqldump" fails, "result" protocol seems wrong.
mysql-test/t/mysqldump.test:
  Fix for bug #14822: Test "mysqldump" fails, "result" protocol seems wrong.
  2>&1 added to be able to see error messages.
2005-11-10 18:58:33 +04:00
unknown
083d321e02 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug4-5.0
2005-11-10 16:49:30 +02:00
unknown
25758b4165 merging
strings/decimal.c:
  Auto merged
2005-11-10 16:32:49 +04:00
unknown
b5e8347f81 Fixed BUG#14719: Views DEFINER grammar is incorrect
Corrected the syntax for the current_user() case.
  (It's "definer = current_user[()]", not just "current_user[()]".)


mysql-test/r/view.result:
  New test case for BUG#14719
mysql-test/t/view.test:
  New test case for BUG#14719
sql/sql_yacc.yy:
  Corrected the CREATE VIEW syntax for the current_user() DEFINER case.
  (It's "definer = current_user[()]", not just "current_user[()]".)
2005-11-09 16:51:00 +01:00
unknown
18b488d7f9 BUG#14480 post-fix: merge to 5.0 2005-11-09 14:47:58 +03:00
unknown
168c66736a Merge mysql.com:/home/psergey/mysql-4.1-nov08-push
into mysql.com:/home/psergey/mysql-5.0-oct08-push


mysql-test/r/create.result:
  Auto merged
mysql-test/t/create.test:
  Auto merged
sql/sql_table.cc:
  Auto merged
2005-11-09 10:12:58 +03:00
unknown
f76ff56512 BUG#14480: post-fix: use the default field value from CREATE list too. 2005-11-09 09:34:46 +03:00
unknown
850cfe786a Fixed BUG#14643: Stored Procedure: Continuing after failed var.
initialization crashes server.
  Make sure variables are initialized to something (like null) when
  the default initialization fails and a continue handler is in effect.


mysql-test/r/sp.result:
  New test case for BUG#14643.
mysql-test/t/sp.test:
  New test case for BUG#14643.
sql/sp_head.cc:
  Make sure variables are initialized to something (like null) when
  the default initialization fails and a continue handler is in effect.
  If this also fails (out of memory), we have to abort without letting
  the handler catch.
2005-11-08 14:47:33 +01:00
unknown
eeb99f505d Merge, will need post-merge fixes.
mysql-test/r/create.result:
  Auto merged
mysql-test/t/create.test:
  Auto merged
sql/sql_table.cc:
  Auto merged
2005-11-08 11:22:51 +03:00
unknown
232652e9d6 changed select release_lock() to do release_lock() to avoid having to compare the
non-deterministic result in the test case for BUG#7947
the bug fix for BUG#7947 now fixed the result of mix_innodb_myisam_binlog test, which
in the past was missing DO RELEASE_LOCK() in the output of SHOW BINLOG EVENTS


mysql-test/r/mix_innodb_myisam_binlog.result:
  DO RELEASE_LOCK() was supposed to be there from the very start
mysql-test/r/rpl_bug7947.result:
  changed select release_lock() to do release_lock() to avoid having to compare the 
  non-deterministic result
mysql-test/t/rpl_bug7947.test:
  changed select release_lock() to do release_lock() to avoid having to compare the 
  non-deterministic result
2005-11-07 20:51:30 -07:00
unknown
224e85536e Merge mysql.com:/home/psergey/mysql-4.1-bug13814
into mysql.com:/home/psergey/mysql-4.1-nov08-push
2005-11-08 05:36:25 +03:00
unknown
3a528ddfe2 Merge mysql.com:/home/psergey/mysql-4.1-bug14480
into mysql.com:/home/psergey/mysql-4.1-nov08-push
2005-11-08 05:34:56 +03:00
unknown
2474fcc1c7 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin
2005-11-08 04:04:36 +03:00
unknown
73e4a77886 Fix handling of comparisons done by IN() to be consistent with how they
are done for the = operator, such as when doing a comparison with a large
unsigned number that was quoted. (Bug #12612)


mysql-test/r/func_equal.result:
  Add new results
mysql-test/t/func_equal.test:
  Add new test
sql/item_cmpfunc.cc:
  Handle FIELD_ITEM that can be compared as a longlong in agg_cmp_type()
  instead of in each of the places it is called.
2005-11-07 14:59:52 -08:00
unknown
ce648a30db Merge mysql.com:/home/cps/mysql/trees/mysql-4.1
into  mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin


sql/examples/ha_tina.cc:
  Auto merged
support-files/mysql.spec.sh:
  SCCS merged
2005-11-08 01:27:15 +03:00
unknown
ee84f5c728 Merge spachev@bk-internal.mysql.com:/home/bk/mysql-4.1
into  asksasha.com:/reiser-data/mysql-dev/mysql-4.1-bug7947


sql/item_func.cc:
  Auto merged
2005-11-07 15:10:48 -07:00
unknown
3004c8de2d fix for BUG#7947 - failure to log DO RELEASE_LOCK() if we disconnect in the middle of
transaction while holding the lock. Also test to make sure other binlogging issues
reported in the bug have been addressed.


sql/item_func.cc:
  fix for BUG#7947
mysql-test/r/rpl_bug7947.result:
  New BitKeeper file ``mysql-test/r/rpl_bug7947.result''
mysql-test/t/rpl_bug7947.test:
  New BitKeeper file ``mysql-test/t/rpl_bug7947.test''
2005-11-07 15:09:35 -07:00
unknown
b8e4fa6f70 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/M50/mysql-5.0
2005-11-07 23:02:33 +01:00
unknown
af2e0dc41a mysql-test/r/connect.result + mysql-test/t/connect.test
Replace the full socket path name, not just a directory component. bug#14720


mysql-test/r/connect.result:
  In cases where "--tmpdir=" is given to the test run, the socket file is not created below
  "$MYSQL_TEST_DIR" but rather within this directory. So the "--replace_result" should not 
  be done to a directory in the path but rather to the complete path name of the socket file. 
  bug#14720
mysql-test/t/connect.test:
  In cases where "--tmpdir=" is given to the test run, the socket file is not created below
  "$MYSQL_TEST_DIR" but rather within this directory. So the "--replace_result" should not
  be done to a directory in the path but rather to the complete path name of the socket file.
  bug#14720
2005-11-07 22:30:44 +01:00
unknown
21447f17e6 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/mysql_src/mysql-5.0
2005-11-07 13:04:27 +01:00
unknown
5412ee4f29 Bug#14616 - Freshly imported table returns error 124 when using LIMIT
Initialized usable_keys from table->keys_in_use instead of ~0
in test_if_skip_sort_order(). It was possible that a disabled
index was used for sorting.


mysql-test/r/myisam.result:
  Bug#14616 - Freshly imported table returns error 124 when using LIMIT
  The test result.
mysql-test/t/myisam.test:
  Bug#14616 - Freshly imported table returns error 124 when using LIMIT
  The test case.
2005-11-07 12:16:49 +01:00
unknown
85cc43802b Bug#14146 CHAR(...USING ...) and CONVERT(CHAR(...) USING...) produce different results
ctype_utf8.result, ctype_utf8.test:
  Adding test case.
item_strfunc.cc:
item_strfunc.h:
  Moving the well formed checking code into a method,
  to reuse in several Item_func_xxx. Reusing the new
  method in Item_func_char and Item_func_charset_conv.



sql/item_strfunc.h:
  Bug#14146 CHAR(...USING ...) and CONVERT(CHAR(...) USING...) produce different results
  Moving the well formed checking code into a method,
  to reuse in several Item_func_xxx.
sql/item_strfunc.cc:
  Moving the well formed checking code into a method,
  to reuse in several Item_func_xxx.
mysql-test/t/ctype_utf8.test:
  Adding test case.
mysql-test/r/ctype_utf8.result:
  Adding test case.
2005-11-07 12:34:19 +04:00
unknown
467deb4cb7 BUG#14480, attempt2: In CREATE ... SELECT ..., don't count the same field twice
when calculating table->null_fields.


mysql-test/r/create.result:
  Testcase for BUG#14480
mysql-test/t/create.test:
  Testcase for BUG#14480
sql/sql_table.cc:
  BUG#14480: For CREATE ... SELECT ... a field list passed to mysql_prepare_table() contains
  instances of create_field for both create-list and select-list. mysql_prepare_table() 
  matches elements that refer to the same field, and joins them together. When the "join"  
  is performed, both of create_field structures has already been counted in "null_fields". 
  
  This fix makes sure that "null_fields" contains the correct value after two create_field 
  structures have been joined.
2005-11-07 09:23:43 +03:00
unknown
a67e6fdf8b Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0


mysql-test/r/view.result:
  Manual merge.
mysql-test/t/view.test:
  Manual merge.
2005-11-05 22:45:54 -08:00
unknown
b0829011b8 Fix Bug#14672 Bug in deletion
mysql-test/r/csv.result:
  correct result file
mysql-test/t/csv.test:
  Add test for a bug
sql/examples/ha_tina.cc:
  Add O_APPEND flag to my_open. We should always add rows to the end of file
2005-11-06 02:11:12 +03:00
unknown
1b65c70413 Fix Bug#13894 Server crashes on update of CSV table
mysql-test/r/csv.result:
  update result file
mysql-test/t/csv.test:
  Add test for a bug
sql/examples/ha_tina.cc:
  sort function should return reverted values for chains to be sorted in
  the right orded. don't do a strange memmove
2005-11-05 15:08:15 +03:00
unknown
34da71709a Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-oct03-push


sql/mysql_priv.h:
  Auto merged
2005-11-05 05:46:41 +03:00
unknown
b5182e4b92 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-2


mysql-test/r/func_gconcat.result:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2005-11-04 17:54:47 -08:00
unknown
19b733aad0 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0


sql/handler.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
2005-11-04 15:03:29 -08:00
unknown
234bf9a70c avoiding of calling Item::val_* methods family with opt_range mem_root, because its life time is too short. (BUG#14342)
mysql-test/r/subselect_innodb.result:
  BUG#14342 test case
mysql-test/t/subselect_innodb.test:
  BUG#14342 test case
sql/opt_range.cc:
  avoiding of calling Item::val_* methods family with opt_range mem_root, because its life time is too short.
2005-11-04 13:16:46 +02:00
unknown
14cb1abbe0 sql_parse.cc:
SCCS merged


sql/sql_parse.cc:
  SCCS merged
2005-11-04 10:54:51 +01:00