Commit graph

49900 commits

Author SHA1 Message Date
unknown
424bda7815 Make mysql compilable on gcc-4.2.1.
c++config.h now has the following code:
// For example, <windows.h> is known to #define min and max as macros...
#undef min
#undef max

So, our defines in my_global.h are undefined when <new> header
is included.

Move definitions of min()/max() to the end of my_global.h.
2007-09-03 15:12:28 +04:00
unknown
403ed43b1d Merge mhansson@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  dl145s.mysql.com:/data0/mhansson/my50-bug30234-push


sql/sql_yacc.yy:
  Auto merged
2007-09-03 12:44:17 +02:00
unknown
a895c77d1e Merge linux-st28.site:/home/martin/mysql/src/bug30234-push/my50-bug30234-push
into  linux-st28.site:/home/martin/mysql/src/bug30234-push/my51-bug30234-push


sql/sql_yacc.yy:
  Auto merged
2007-09-03 12:02:45 +02:00
unknown
f0d4beee79 Bug #30234: Unexpected behavior using DELETE with AS and USING
DELETE FROM ... USING ... statements with the following type of 
ambiguous aliasing gave unexpected results:
DELETE FROM t1 AS alias USING t1, t2 AS alias WHERE t1.a = alias.a;
This query would leave table t1 intact but delete rows from t2.
Fixed by changing DELETE FROM ... USING syntax so that only alias 
references (as opposed to alias declarations) may be used in FROM.


mysql-test/r/delete.result:
  Bug#30234: Test Result
mysql-test/t/delete.test:
  Bug#30234: Test Case
sql/sql_yacc.yy:
  Bug#30234:
  - Added parser rule table_alias_ref_list that contains a list of table 
    aliases only.
  - Added parser rule table_alias_ref that sets the TL_OPTION_ALIAS in 
    order to turn off semantic checking that applies only for table names.
2007-09-03 11:55:35 +02:00
unknown
3afbd332c9 ndb - merge error code
forgot to update next TC no
2007-09-03 11:32:48 +02:00
unknown
3dbbc87c87 ndb - merge error code(s)
storage/ndb/src/kernel/blocks/ERROR_codes.txt:
  merge error code(s)
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  merge error code(s)
storage/ndb/test/ndbapi/testIndex.cpp:
  merge error code(s)
2007-09-03 11:29:58 +02:00
unknown
46d7b333c0 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 11:07:32 +02:00
unknown
11987c913a Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 10:59:44 +02:00
unknown
37db876e10 Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime


sql/sql_cache.cc:
  Auto merged
2007-09-03 10:54:33 +02:00
unknown
8811fde4ba Merge adventure.(none):/home/thek/Development/cpp/bug21074/my50-bug21074
into  adventure.(none):/home/thek/Development/cpp/bug21074/my51-bug21074


sql/sql_cache.cc:
  Null merge
2007-09-03 10:52:14 +02:00
unknown
733bd4fe81 Bug #21074 Large query_cache freezes mysql server sporadically under heavy load
Invaldating a subset of a sufficiently large query cache can take a long time.
During this time the server is efficiently frozen and no other operation can
be executed. This patch addresses this problem by setting a time limit on
how long time a dictionary access request can take before giving up on the 
attempt. This patch does not work for query cache invalidations issued by
DROP, ALTER or RENAME TABLE operations.


sql/sql_cache.cc:
  Changed mutex locking to a timed spinn lock. If access to query cache dictionary
  takes "a long time" (currently more than 0.1 seconds) the system fall backs on
  ordinary statement execution.
2007-09-03 10:47:24 +02:00
unknown
ee0b7d895d Bug#29408 Cannot find view in columns table if the selection contains a function
Use view db name as thread default database, in order to ensure
that the view is parsed and prepared correctly.


mysql-test/r/sp.result:
  test result
mysql-test/t/sp.test:
  test case
sql/sql_parse.cc:
  copy thd->db_length to table_list->db_length
sql/sql_view.cc:
  Use view db name as thread default database, in order to ensure
  that the view is parsed and prepared correctly.
2007-09-03 12:22:56 +05:00
unknown
fb4604f2e8 ndb - bug#30764
When adding a read to lock queue, where there is a X-lock ahead, upgrade to X-lock
  (found by pekkas blob changes)


storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  When adding a read to lock queue, where there is a X-lock ahead, upgrade to X-lock
  (found by pekkas blob changes)
2007-09-03 08:15:59 +02:00
unknown
943ed8fe35 Merge bk-internal:/home/bk/mysql-5.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint
2007-09-01 11:43:44 +02:00
unknown
8ffb011bb7 Merge pilot.(none):/data/msvensson/mysql/mysql-5.0-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint


mysql-test/lib/mtr_misc.pl:
  Auto merged
2007-09-01 11:42:43 +02:00
unknown
5ece0c9b44 Merge pilot.(none):/data/msvensson/mysql/mysql-4.1-maint
into  pilot.(none):/data/msvensson/mysql/mysql-5.0-maint


mysql-test/lib/mtr_misc.pl:
  Auto merged
2007-09-01 11:41:59 +02:00
unknown
55566a66bd Use eval around "rmtree" and use our own version of rmtree if it fails 2007-09-01 11:41:38 +02:00
unknown
ee3c05ee11 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-30712


sql/log.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
2007-08-31 16:04:36 -06:00
unknown
d2f32b1053 Fixed timing issues in events.test
mysql-test/t/events.test:
  
  Wait for the select get_lock() to actually get the lock
  wait for release_lock() to actually release the lock
2007-08-31 15:51:57 -06:00
unknown
92262b8cc1 Eliminate compile warnings. 2007-09-01 00:12:00 +04:00
unknown
d7463b5e1b Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  ibm.opbmk:/home/alik/Documents/MySQL/devel/5.1-rt-bug25843


sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
2007-08-31 22:13:27 +04:00
unknown
436cca531c Correct fix for test result. 2007-08-31 10:53:51 -06:00
unknown
7e0ad09edf Fix for BUG#25843: changing default database between PREPARE and EXECUTE
of statement breaks binlog.

There were two problems discovered by this bug:

  1. Default (current) database is not fixed at the creation time.
     That leads to wrong output of DATABASE() function.

  2. Database attributes (@@collation_database) are not fixed at
     the creation time. That leads to wrong resultset.

Binlog breakage and Query Cache wrong output happened because of
the first problem.

The fix is to remember the current database at the PREPARE-time and
set it each time at EXECUTE.


mysql-test/include/query_cache_sql_prepare.inc:
  The first part of the test case for BUG#25843.
mysql-test/r/query_cache_ps_no_prot.result:
  Update result file.
mysql-test/r/query_cache_ps_ps_prot.result:
  Update result file.
mysql-test/suite/rpl/r/rpl_ps.result:
  Update result file.
mysql-test/suite/rpl/t/rpl_ps.test:
  The second part of the test case for BUG#25843.
sql/mysql_priv.h:
  Added mysql_opt_change_db() prototype.
sql/sp.cc:
  1. Polishing;
  2. sp_use_new_db() has been removed;
  3. Use mysql_opt_change_db() instead of sp_use_new_db().
sql/sp.h:
  sp_use_new_db() has been removed.
  This function has nothing to do with a) sp and b) *new* database.
  It was merely "switch the current database if needed".
sql/sp_head.cc:
  1. Polishing.
  2. Use mysql_opt_change_db() instead of sp_use_new_db().
sql/sql_class.cc:
  Move THD::{db, db_length} into Statement.
sql/sql_class.h:
  Move THD::{db, db_length} into Statement.
sql/sql_db.cc:
  Introduce mysql_opt_change_db() as a replacement (and inspired by)
  sp_use_new_db().
sql/sql_prepare.cc:
  1. Remember the current database in Prepared_statement::prepare().
  2. Switch/restore the current database in Prepared_statement::execute().
2007-08-31 20:42:14 +04:00
unknown
39a892aa3f ndb - autotest
remove more "extra mysql-"


storage/ndb/test/run-test/autotest-run.sh:
  remove more "extra mysql-"
2007-08-31 16:55:59 +02:00
unknown
ed9dcfb287 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-cleanup
2007-08-31 08:51:31 -06:00
unknown
3d15ac95d6 Test cleanup for events.test
mysql-test/r/events.result:
  Fixed all the select on information_schema.processlist to be more reliable.
mysql-test/t/events.test:
  Fixed all the select on information_schema.processlist to be more reliable.
2007-08-31 08:49:49 -06:00
unknown
26f6d3f6fc ndb autotest
add --tag
 remove prepended mysql-
  add conf-test.cnf
  add embryo upgrade-boot.sh


storage/ndb/test/run-test/Makefile.am:
  add test test conf
storage/ndb/test/run-test/autotest-boot.sh:
  add --tag to autotest
  remove "extra" appended mysql- to all scripts
storage/ndb/test/run-test/autotest-run.sh:
  remove extra "mysql-"
storage/ndb/test/run-test/conf-test.cnf:
  New BitKeeper file ``storage/ndb/test/run-test/conf-test.cnf''
storage/ndb/test/run-test/upgrade-boot.sh:
  New BitKeeper file ``storage/ndb/test/run-test/upgrade-boot.sh''
2007-08-31 16:12:51 +02:00
unknown
72759bc2ec merge 2007-08-31 16:09:48 +02:00
unknown
035e516af1 Merge gleb.loc:/home/uchum/work/bk/5.0-opt-30126
into  gleb.loc:/home/uchum/work/bk/5.1-opt


client/mysqldump.c:
  Auto merged
sql/sql_parse.cc:
  SCCS merged
2007-08-31 17:50:52 +05:00
unknown
b25b8cbc72 Merge gleb.loc:/home/uchum/work/bk/5.0-opt-30126
into  gleb.loc:/home/uchum/work/bk/5.0-opt
2007-08-31 17:05:37 +05:00
unknown
ff149b713c Fixed bug #30126.
When dumping database from a 4.x server, the mysqldump client
inserted a delimiter sign inside special commentaries of the form:
  /*!... CREATE DATABASE IF NOT EXISTS ... ;*/
During restoration that dump file was splitten by delimiter signs on
the client side, and the rest of some commentary strings was prepended
to following statements.

The 4x_server_emul test case option has been added for use with the
DBUG_EXECUTE_IF debugging macro. This option affects debug server
builds only to emulate particular behavior of a 4.x server for
the mysqldump client testing. Non-debugging builds are not affected.


mysql-test/r/mysqldump-compat.result:
  Added test case for bug #30126.
mysql-test/t/mysqldump-compat.opt:
  Added test case for bug #30126.
mysql-test/t/mysqldump-compat.test:
  Added test case for bug #30126.
sql/sql_parse.cc:
  Fixed bug #30126.
  The mysqldump client uses the "SHOW CREATE DATABASE" query to
  obtain the "CREATE DATABASE" statement from that database.
  The 4.x server doesn't recognise that query, and mysqldump
  forms the "CREATE DATABASE" statement from scratch.
  That statement was formed incorrectly.
  
  To enforce the mysqldump client to create that statement from
  scratch, debugging code has been added to the mysql_execute_command
  function: in tcase of the --loose-debug=d,4x_server_emul option,
  the server returns parse error to client to emulate old behaviour.
  
  The 4x_server_emul test case option has been added for use with the
  DBUG_EXECUTE_IF debugging macro. This option affects debug server
  builds only to emulate particular behavior of a 4.x server for
  the mysqldump client testing. Non-debugging builds are not affected.
client/mysqldump.c:
  Fixed bug #30126.
  The init_dumping_tables function has been modified to output semicolon
  outside of commentaries.
2007-08-31 16:59:07 +05:00
unknown
c11de56813 Correct test result file for bug #27014 2007-08-31 05:21:12 -06:00
unknown
871172dd87 Fix test results for bug #27014 2007-08-31 01:28:42 -06:00
unknown
a4b0ad6cf2 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  bodhi.(none):/opt/local/work/mysql-5.1-12713-new


sql/handler.cc:
  Auto merged
sql/log.cc:
  Auto merged
2007-08-31 10:58:02 +04:00
unknown
ee040ef2b7 Never access thd->ha_data directly, use getters/setters from the plugin
API instead.
This is a pre-requisite of the fix for Bug 12713, which changes the
data type of thd->ha_data from void * to struct Ha_data.


include/mysql/plugin.h:
  Provide accessors to thd->ha_data for simple and robust code.
sql/ha_ndbcluster_binlog.h:
  Use getters/setters of thd->ha_data, instead of direct access.
sql/handler.cc:
  Use a getter of thd->ha_data instead of direct access.
sql/log.cc:
  Use getters/setters of thd->ha_data, instead of direct access.
sql/rpl_utility.h:
  Fix a compilation warning (declaration order must match initialization
  order in constructor).
storage/federated/ha_federated.cc:
  Use interface accessors to thd->ha_data, instead of direct access.
2007-08-31 10:19:52 +04:00
unknown
333a28bc76 Bug #27014: Imperfect error/warning message for STR_TO_DATE for invalid datetime value
Fix name of function in warning message.


sql/item_timefunc.cc:
  Fix error message in extract_date_time(); ("str_to_time" -> "str_to_date")
2007-08-30 23:57:39 -06:00
unknown
3f9be28c41 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-runtime


sql/item_cmpfunc.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
2007-08-30 17:23:40 -06:00
unknown
0458c3cfc8 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge


sql/sql_insert.cc:
  Auto merged
2007-08-30 17:05:49 -06:00
unknown
66baabd408 Merge ramayana.hindu.god:/home/tsmith/m/bk/51-target22
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-08-30 14:56:24 -06:00
unknown
cebc1abcc3 Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-08-30 14:54:19 -06:00
unknown
7de80833d9 Disable rpl_ndb_2other, which has never worked on bigendian machines. 2007-08-30 14:13:05 -06:00
unknown
89d3d58511 Merge weblab.(none):/home/marcsql/TREE/mysql-5.1-base
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge


client/mysql.cc:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2007-08-30 13:23:59 -06:00
unknown
97844e982b Post-merge test case with wait_condition for Bug#28587
mysql-test/r/insert_update.result:
  Post-merge: add test case result for Bug#28587.
mysql-test/t/insert_update.test:
  Post-merge: add test case for Bug#28587.
2007-08-30 16:19:23 -03:00
unknown
041be8f029 Merge moksha.local:/Users/davi/mysql/push/bugs/28587-5.0
into  moksha.local:/Users/davi/mysql/push/bugs/28587-5.1


sql/sql_insert.cc:
  Auto merged
2007-08-30 16:13:07 -03:00
unknown
bccbd5c493 Bug#28587 SELECT is blocked by INSERT waiting on read lock, even with low_priority_updates
The problem is that a SELECT on one thread is blocked by INSERT ... ON
DUPLICATE KEY UPDATE on another thread even when low_priority_updates is
activated.

The solution is to possibly downgrade the lock type to the setting of
low_priority_updates if the INSERT cannot be concurrent.


sql/sql_insert.cc:
  Possibly downgrade lock type to the the setting of low_priority_updates if
  if the INSERT cannot be concurrent.
2007-08-30 16:11:53 -03:00
unknown
88cf551a16 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge
2007-08-30 12:58:09 -06:00
unknown
41a2f1c8de Bug#28779 (mysql_query() allows execution of statements with unbalanced
comments)

This change set is for 5.1 (manually merged)

Before this fix, the server would accept queries that contained comments,
even when the comments were not properly closed with a '*' '/' marker.

For example,
  select 1 /* + 2 <EOF>
would be accepted as
  select 1 /* + 2 */ <EOF>
and executed as
  select 1

With this fix, the server now rejects queries with unclosed comments
as syntax errors.
Both regular comments ('/' '*') and special comments ('/' '*' '!') must be
closed with '*' '/' to be parsed correctly.


mysql-test/r/comments.result:
  Unbalanced comments are a syntax error.
mysql-test/t/comments.test:
  Unbalanced comments are a syntax error.
sql/sql_lex.cc:
  Unbalanced comments are a syntax error.
2007-08-30 12:57:05 -06:00
unknown
9cedd882e7 Add -Wno-unused to --warning-mode=pedantic, otherwise sql/ compilation
generated so many warnings that the mode was unusable.
2007-08-30 21:19:05 +04:00
unknown
db56cb5b86 Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge


mysql-test/r/comments.result:
  failed auto merge
mysql-test/t/comments.test:
  failed auto merge
sql/sql_lex.cc:
  failed auto merge
2007-08-30 10:53:11 -06:00
unknown
672c421b13 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-28779-b
2007-08-30 10:38:20 -06:00