into weblab.(none):/home/marcsql/TREE/mysql-5.1-rt50-merge
mysql-test/r/sp.result:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/query_cache.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/rpl_utility.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
into trift2.:/MySQL/M51/push-5.1
configure.in:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/rpl_record.cc:
Auto merged
sql/rpl_utility.cc:
Auto merged
sql/rpl_utility.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
configure.in:
Auto merged
BitKeeper/deleted/.del-ha_blackhole.cc~727c69ef7846623a:
Auto merged
BitKeeper/deleted/.del-net_serv.cc~120fb81d7e670308:
Auto merged
BitKeeper/deleted/.del-pack.c~4754cd15e3058c75:
Auto merged
BitKeeper/deleted/.del-password.c~9d4b6a4c57887ac7:
Auto merged
BitKeeper/deleted/.del-sql_state.c~3b39d30b649690f3:
Auto merged
libmysql/libmysql.c:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build-work
BitKeeper/deleted/.del-ha_blackhole.cc~727c69ef7846623a:
Auto merged
libmysql/libmysql.c:
Auto merged
mysql-test/include/have_bug25714.inc:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
configure.in:
null-merge
BitKeeper/deleted/.del-net_serv.cc:
Auto merged
BitKeeper/deleted/.del-pack.c:
Auto merged
BitKeeper/deleted/.del-password.c:
Auto merged
BitKeeper/deleted/.del-sql_state.c:
Auto merged
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.
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.
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.
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.
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)
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
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().
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.