Commit graph

25205 commits

Author SHA1 Message Date
unknown
8559ef627d Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-bg12280


sql/sql_parse.cc:
  Auto merged
sql/share/errmsg.txt:
  Auto merged
2005-08-10 10:32:43 +04:00
unknown
f6fff55eb0 Fix for bug "Triggers: crash if flush tables".
We should not allow FLUSH statement to be executed inside both triggers
and stored functions.


mysql-test/r/sp-error.result:
  Updated test after replacing error, which is thrown when one uses FLUSH
  statement inside of stored function, with more specific.
  Also now we issue more general error when we barking about USE command
  in stored routines.
mysql-test/r/trigger.result:
  Added test for bug  "Triggers: crash if flush tables"
mysql-test/t/sp-error.test:
  Updated test after replacing error, which is thrown when one uses FLUSH
  statement inside of stored function, with more specific.
  Also now we issue more general error when we barking about USE command
  in stored routines.
mysql-test/t/trigger.test:
  Added test for bug  "Triggers: crash if flush tables"
sql/share/errmsg.txt:
  Removed ER_SP_NO_USE error. Now we use more general ER_SP_BADSTATEMENT in this
  case. Instead added error message for barking about statements which should not
  be allowed inside of stored functions or triggers.
  It is safe to do this since it is highly unprobable that someone will upgrade
  first to the new 5.0 release and then downgrade back to the old one.
sql/sql_parse.cc:
  reload_acl_and_cache():
    FLUSH TABLES and FLUSH PRIVILEGES should not be allowed if we are inside
    of stored function or trigger.
sql/sql_yacc.yy:
  We should not allow FLUSH statement inside both triggers and stored
  functions. Replaced error which is thrown in this case with more
  specific.
  Also now we issue more general ER_SP_BADSTATEMENT error when one tries
  to use USE command inside of stored routine.
2005-08-10 10:31:32 +04:00
unknown
0319812733 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into moonbone.local:/work/mysql-5.0-bug-12340
2005-08-10 00:19:23 +04:00
unknown
d36140121b Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0
into  monster.:D:/Work/mysql/mysql-5.0
2005-08-09 14:50:54 -05:00
unknown
741d3ae1d5 Some changes to project files
str_alloc had been added but was not added to mysqlclient and strings
libmysql should have had strings as a dependent.


VC++Files/client/mysqlclient.vcproj:
  Added missing file
VC++Files/mysql.sln:
  Make libmysql dependendent on strings
VC++Files/strings/strings.vcproj:
  Added missing file
2005-08-09 14:48:43 -05:00
unknown
71a8b11ff2 Fix bug Wrong comparison in ha_innobase::cmp_ref()
When PRIMARY KEY is present ha_innobase::cmp_ref() uses it to compare refs.
After comparing part of key it moves pointers to compare next part.
For varchar parts pointers were moved only by length of parts, not including
bytes containig part length itself. This results in wrong comparision and
wrong number of deleted records.



sql/ha_innodb.cc:
  Fix bug   ha_innobase::cmp_ref() moves pointers by wrong length.
mysql-test/t/innodb.test:
  Test case for bug  ha_innobase::cmp_ref() moves pointers by wrong length.
mysql-test/r/innodb.result:
  Test case for bug  ha_innobase::cmp_ref() moves pointers by wrong length.
2005-08-09 22:05:07 +04:00
unknown
81a24473dc removing trailing spaces 2005-08-09 07:57:39 -06:00
unknown
530abb5c8b small corrections to the IM.
server-tools/instance-manager/IMService.cpp:
  removed \n from log_info calls as these will be added automatically
server-tools/instance-manager/user_map.cc:
  added back in support for password files using \r\n, this time
  without breaking the const contract.
2005-08-09 07:57:36 -06:00
unknown
88c4ad2435 Added missing cast. 2005-08-09 16:57:35 +03:00
unknown
776713f4b2 Merged code. 2005-08-09 15:29:33 +03:00
unknown
8e06296272 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-is
2005-08-09 12:57:50 +04:00
unknown
48c1256446 Fix after merging patch solving bug "Using stored function with
information_schema causes empty result set" with main tree.


sql/sp_head.cc:
  Now close_thread_tables() does not have 4th 'stopper' argument.
2005-08-09 12:56:55 +04:00
unknown
c4228519a6 Fixed test that failed on 32 bit systems
sql/ha_innodb.cc:
  Don't print not critical warning if log_warnings is not set
  Use sql_print_warning() instead of fprintf().
  (We should not use fprintf() as this causes problems on windows and with the embedded server)
2005-08-09 11:21:45 +03:00
unknown
8103db27bb Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-is


mysql-test/r/information_schema.result:
  Auto merged
mysql-test/t/information_schema.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
mysql-test/r/sp.result:
  Manual merge
mysql-test/t/sp.test:
  Manual merge
sql/sql_class.h:
  Manual merge
2005-08-09 11:43:55 +04:00
unknown
807a9c8dff ha_innodb.cc:
Add a forgotten newline to a print


sql/ha_innodb.cc:
  Add a forgotten newline to a print
2005-08-08 21:43:08 +03:00
unknown
c4187de67a Merge mysql.com:/home/jimw/my/mysql-5.0-11570
into  mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/t/sp.test:
  Auto merged
2005-08-08 11:43:07 -07:00
unknown
05071ff49f Fix error code in some tests because of merge
mysql-test/t/errors.test:
  Fix error code
mysql-test/t/type_bit.test:
  Fix error code
mysql-test/t/type_bit_innodb.test:
  Fix error code
2005-08-08 11:42:09 -07:00
unknown
1f01817e09 Merge mysql.com:/home/jimw/my/mysql-5.0-6080
into  mysql.com:/home/jimw/my/mysql-5.0-clean


sql/sql_parse.cc:
  Auto merged
sql/share/errmsg.txt:
  SCCS merged
2005-08-08 10:12:24 -07:00
unknown
279846b4be Merge mysql.com:/home/jimw/my/mysql-5.0-3094
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2005-08-08 10:10:04 -07:00
unknown
9e3e0c87bb Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/kostja/mysql/mysql-5.0-11909


sql/sql_select.cc:
  Auto merged
2005-08-08 19:26:19 +04:00
unknown
76a280f180 A fix and a test case for Bug#11909 "mysql_stmt_attr_set
CURSOR_TYPE_READ_ONLY nested queries corrupt result"


sql/sql_prepare.cc:
  If there is a cursor, use its protocol for fetch: 
  Protocol instances have a state and thd->protocol_prep can't
  be used for multiple cursors.
sql/sql_select.cc:
  - init Cursor::protocol
sql/sql_select.h:
  - add Cursor::protocol
tests/mysql_client_test.c:
  A test case for Bug#11909 "mysql_stmt_attr_set CURSOR_TYPE_READ_ONLY
   nested queries corrupt result"
2005-08-08 19:24:56 +04:00
unknown
f4e065916e grant.result:
After merge fix


mysql-test/r/grant.result:
  After merge fix
  ,
2005-08-08 19:04:11 +05:00
unknown
3f70f80463 Merge mysql.com:/usr/home/bar/mysql-4.1.b10892
into  mysql.com:/usr/home/bar/mysql-5.0


mysql-test/t/grant.test:
  Auto merged
sql/item.cc:
  Auto merged
mysql-test/r/grant.result:
  using local copy
2005-08-08 19:04:10 +05:00
unknown
630a23ba00 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug12082


sql/sql_select.cc:
  Auto merged
2005-08-08 14:04:09 +00:00
unknown
39fda60043 Fix for bug "Using stored function with information_schema causes empty
result set".

To enable full access to contents of I_S tables from stored functions
or statements that use them, we manipulate with thread's open tables
state and ensure that we won't cause deadlock when we open tables by
ignoring flushes and name-locks.
Building of contents of I_S.TABLES no longer requires locking of tables
since we use use handler::info() method with HA_STATUS_AUTO flag instead
of handler::update_auto_increment() for obtaining information about
auto-increment values. But this also means that handlers have to implement
support for HA_STATUS_AUTO flag (particularly InnoDB needs it).


mysql-test/r/alter_table.result:
  Updated test results. This change was caused by the fact that now when
  we build contents of I_S tables (and thus output of SHOW INDEX) we
  don't use instances of tables which may be already opened and locked
  by thread (we always use new instance).
mysql-test/r/information_schema.result:
  Added test which checks how information about current auto-increment value for
  table is reported in INFORMATION_SCHEMA.TABLES view.
mysql-test/r/sp.result:
  Added test for bug  "Using stored function with information_schema causes
  empty result set".
mysql-test/t/information_schema.test:
  Added test which checks how information about current auto-increment value for
  table is reported in INFORMATION_SCHEMA.TABLES view.
mysql-test/t/sp.test:
  Added test for bug  "Using stored function with information_schema causes
  empty result set".
sql/mysql_priv.h:
  close_thread_tables():
    Get rid of 'stopper' argument which is no longer used. Now when we need
    to open and then close some table without touching tables which are already
    opened we use THD::reset_n/restore_backup_open_tables_state() methods.
  open_tables()/open_normal_and_derived_tables():
    Added 'flags' argument to be able open tables even if some has done
    a flush or hold namelock on them.
sql/sp.cc:
  close_proc_table/open_proc_table_for_read/db_find_routine():
    Replaced push_open_tables_state/pop_open_tables_state() methods which
    were saving/restoring current open tables state in/from THD::open_state_list
    with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
    methods which assume that backup storage for this state is allocated on
    stack (or elsewhere) by their caller.
  open_proc_table_for_read():
    Since now we can have several open tables states stacked up we can't rely
    rely on checking whether we have some tables open in previous state.
    Instead we always assume that some tables are open and we need to ignore
    flush while locking mysql.proc. We don't really need 
    MYSQL_LOCK_IGNORE_GLOBAL_READ_LOCK in this case since we open mysql.proc table
    only for reading.
sql/sp.h:
  Added declarations of open_proc_table_for_read()/close_proc_table() to be
  able to use them in sql_show.cc.
sql/sql_base.cc:
  close_thread_tables():
    Get rid of 'stopper' argument which is no longer used. Now when we need
    to open and then close some table without touching tables which are already
    opened we use THD::reset_n/restore_backup_open_tables_state() methods.
  open_tables()/open_normal_and_derived_tables():
    Added 'flags' argument to be able open tables even if some has done
    a flush or hold namelock on them.
sql/sql_class.cc:
  Open_tables_state, THD:
    Replaced push_open_tables_state/pop_open_tables_state() methods which
    were saving/restoring current open tables state in/from THD::open_state_list
    with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
    methods which assume that backup storage for this state is allocated on
    stack (or elsewhere) by their caller.
sql/sql_class.h:
  Open_tables_state, THD:
    Replaced push_open_tables_state/pop_open_tables_state() methods which
    were saving/restoring current open tables state in/from THD::open_state_list
    with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
    methods which assume that backup storage for this state is allocated on
    stack (or elsewhere) by their caller.
sql/sql_handler.cc:
  open_tables()/open_normal_and_derived_tables():
    Added 'flags' argument to be able open tables even if some has done
    a flush or hold namelock on them.
sql/sql_prepare.cc:
  open_tables()/open_normal_and_derived_tables():
    Added 'flags' argument to be able open tables even if some has done
    a flush or hold namelock on them.
sql/sql_show.cc:
  get_all_tables():
    Now we use THD::reset_n_/restore_backup_open_tables_state() for 
    saving/restoring open tables state instead of working with it directly
    (This also allows us to have proper content of I_S system tables in
    statements with stored functions and in stored functions). We also
    ignore possible flushes when opening tables (we may create deadlock
    otherwise). Also we do all needed manipulations with LEX in this function
    and not in get_schema_tables_result() now.
  get_schema_tables_record():
    Let us use handler::info() method with HA_STATUS_AUTO flag for obtaining
    information about table's auto-increment value. This allows to avoid locking
    of tables which is needed when we use handler::update_auto_increment() method.
  fill_schema_proc():
    Now we use open_proc_table_for_read/close_proc_table() for access to
    mysql.proc table (so we won't cause deadlock if we already have some
    tables open and locked, this also allows us to have proper content in
    ROUTINES system table in statements using stored functions/in stored
    functions).
  get_schema_tables_result():
    Moved all manipulations with Open_tables_state and LEX needed for
    safe opening of tables to ST_SCHEMA_TABLE::fill_table functions
    (i.e. get_all_tables() and fill_schema_proc()).
sql/sql_update.cc:
  open_tables()/open_normal_and_derived_tables():
    Added 'flags' argument to be able open tables even if some has done
    a flush or hold namelock on them.
2005-08-08 17:46:06 +04:00
unknown
00267b9f73 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/usr/home/bar/mysql-4.1.b10892
2005-08-08 16:22:17 +05:00
unknown
b9ffa4dbab item.cc:
After review fix


sql/item.cc:
  After review fix
2005-08-08 16:20:46 +05:00
unknown
cfb8abd6cc Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0
into rurik.mysql.com:/home/igor/mysql-5.0
2005-08-07 15:56:48 -07:00
unknown
9de04d2ea9 Merge mysql.com:/home/mydev/mysql-4.1-4100
into  mysql.com:/home/mydev/mysql-5.0-5000


mysql-test/r/flush.result:
  Auto merged
mysql-test/t/flush.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-08-08 00:10:07 +02:00
unknown
a217d5c516 subselect.result:
Correction after manual merge.


mysql-test/r/subselect.result:
  Correction after manual merge.
2005-08-07 15:10:07 -07:00
unknown
84051f2a6d Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-5000
2005-08-08 00:10:06 +02:00
unknown
89e421cdb0 Manual merge 2005-08-07 15:10:06 -07:00
unknown
44b76f173d Post-merge fixes 2005-08-07 22:10:05 +00:00
unknown
7ca7da411e Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug11869-part3


BitKeeper/deleted/.del-not_windows.inc:
  Auto merged
mysql-test/r/create.result:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/type_datetime.result:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
mysql-test/t/rpl_flush_tables.test:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
2005-08-07 21:32:26 +00:00
unknown
f34d542c68 Manual merge
BitKeeper/deleted/.del-not_windows.inc:
  Delete: mysql-test/include/not_windows.inc
mysql-test/r/fulltext_order_by.result:
  Auto merged
mysql-test/r/type_datetime.result:
  Auto merged
mysql-test/t/fulltext_order_by.test:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
mysql-test/t/rpl_flush_tables.test:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/sql_union.cc:
  Auto merged
2005-08-07 21:30:46 +00:00
unknown
d7086c4a0c BUG#11869:part 2: post-review fixes: merging into 5.0
We're out of bits in st_select_lex->options so make TMP_TABLE_FORCE_MYISAM ==
OPTION_FOUND_COMMENT (the latter is not used by create_tmp_table).


mysql-test/r/create.result:
  Updated the test result
mysql-test/r/fulltext_order_by.result:
  Drop all tables this test uses
mysql-test/t/fulltext_order_by.test:
  Drop all tables this test uses
2005-08-07 21:21:30 +00:00
unknown
23095e278b Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1
2005-08-07 14:03:47 -07:00
unknown
25201f23c8 Merge mysql.com:/home/mydev/mysql-4.1
into  mysql.com:/home/mydev/mysql-4.1-4100
2005-08-07 23:03:46 +02:00
unknown
84d34d9d59 subselect.result:
Added test case for bug .
  Fixed results for two existing test cases.
subselect.test:
  Added test case for bug .
item_subselect.cc:
  Fixed bug .
  Added missing code in Item_in_subselect::row_value_transformer
  that caused problems for queries with
  ROW(elems) IN (SELECT DISTINCT cols FROM ...).


sql/item_subselect.cc:
  Fixed bug .
  Added missing code in Item_in_subselect::row_value_transformer
  that caused problems for queries with
  ROW(elems) IN (SELECT DISTINCT cols FROM ...).
mysql-test/t/subselect.test:
  Added test case for bug .
mysql-test/r/subselect.result:
  Added test case for bug .
  Fixed results for two existing test cases.
2005-08-07 14:03:46 -07:00
unknown
b9e04cf1ef BUG#11869: part2: post-review fixes:
In init_prepare_fake_select_lex() don't empty ftfunc_list. UNION's ORDER BY clause may 
contain MATCH(...), for which fix_index() should be called.


mysql-test/r/fulltext_order_by.result:
  BUG#11869 part2 : added another test case
mysql-test/t/fulltext_order_by.test:
  BUG#11869 part2 : added another test case
2005-08-07 21:03:45 +00:00
unknown
9e5c20f31f Bug#10473 - Can't set 'key_buffer_size' system variable to ZERO
Give the user a warning if he tries to destroy the default key cache.


mysql-test/r/key_cache.result:
  Bug#10473 - Can't set 'key_buffer_size' system variable to ZERO
  The test result.
mysql-test/t/key_cache.test:
  Bug#10473 - Can't set 'key_buffer_size' system variable to ZERO
  The test case.
sql/share/errmsg.txt:
  Bug#10473 - Can't set 'key_buffer_size' system variable to ZERO
  The new message string.
2005-08-07 20:39:17 +02:00
unknown
1ab80cf4df Merge mysql.com:/home/mydev/mysql-4.1
into  mysql.com:/home/mydev/mysql-4.1-4100
2005-08-07 18:28:08 +02:00
unknown
1b431c4274 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug11869-part2
2005-08-07 11:05:25 +00:00
unknown
f3ce475dce Manual merge
mysql-test/t/fulltext_order_by.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
2005-08-07 11:03:54 +00:00
unknown
852dcb7597 BUG#11869 (cont'd, eliminating "table type doesn't support FULLTEXT" error):
When creating temporary table for UNION, pass TMP_TABLE_FORCE_MYISAM flag to 
create_tmp_table if we will be using fulltext function(s) when reading from the 
temp. table.


mysql-test/r/fulltext_order_by.result:
  Testcase for BUG#11869 (cont'd, eliminating "table type doesn't support FULLTEXT" error)
mysql-test/t/fulltext_order_by.test:
  Testcase for BUG#11869 (cont'd, eliminating "table type doesn't support FULLTEXT" error)
sql/mysql_priv.h:
  BUG#11869 (cont'd, eliminating "table type doesn't support FULLTEXT" error):
  Added TMP_TABLE_FORCE_MYISAM flag
sql/sql_select.cc:
  BUG#11869 (cont'd, eliminating "table type doesn't support FULLTEXT" error):
  In create_tmp_table(), honor the TMP_TABLE_FORCE_MYISAM flag
2005-08-06 21:08:28 +00:00
unknown
9cd28273aa Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0
2005-08-06 18:21:36 +02:00
unknown
88b0061e9b Merge mysqldev@production.mysql.com:my/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
2005-08-06 03:31:01 +02:00
unknown
b97c77a024 make_win_src_distribution.sh:
Added missing backslashes


scripts/make_win_src_distribution.sh:
  Added missing backslashes
2005-08-06 03:10:35 +02:00
unknown
c62a594200 Fix error message when creating a non-string field with a display
width beyond the maximum. (Bug )


mysql-test/r/errors.result:
  Update results
mysql-test/r/type_bit.result:
  Update results
mysql-test/r/type_bit_innodb.result:
  Update results
mysql-test/t/errors.test:
  Add new regression test
mysql-test/t/type_bit_innodb.test:
  Update error code in test
sql/share/errmsg.txt:
  Add new error message
sql/sql_parse.cc:
  Display more appropriate error message for column creation that
  fails due to a non-string field with a display width that is too
  big.
2005-08-05 17:22:53 -07:00
unknown
7b969dddc3 Merge rurik.mysql.com:/home/igor/mysql-5.0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
2005-08-05 16:49:16 -07:00