- Move binlog related tests to binlog_innodb.test
- Remove "source include/have_log_bin.inc" from innodb.test
mysql-test/r/innodb.result:
Move binlog related tests to binlog_innodb.test
mysql-test/t/innodb.test:
Move binlog related tests to binlog_innodb.test
mysql-test/r/binlog_innodb.result:
Move binlog related tests to binlog_innodb.test
mysql-test/t/binlog_innodb.test:
Move binlog related tests to binlog_innodb.test
we use net->vio in my_net_local_init, but in the my_net_init
implementation we set it after the call, so work with unspecified
net->vio value
sql/net_serv.cc:
Bug #29117 (init_file test crashes with embedded server)
as we started using net->vio in my_net_local_init, we should set
it before the call
Additional edits to the 5.0 ChangeSet|1.2519 that are necessary for the fix to work with the new code structure in 5.1.
sql/item_create.cc:
Added line to prevent a query that contains a UDF from being cached. In 5.0 this was handled in sql_yacc.cc but now the the individual Create_func builders will be responsible for clearing the flag.
into damien-katzs-computer.local:/Users/dkatz/mysql51
mysql-test/r/udf.result:
Auto merged
mysql-test/t/udf.test:
Auto merged
sql/sql_yacc.yy:
This line that marks the expression as unsafe for caching now belongs in the create() methods for builder objects inheriting from Create_func.
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-rpl
mysql-test/extra/rpl_tests/rpl_log.test:
Auto merged
mysql-test/extra/rpl_tests/rpl_row_basic.test:
Auto merged
mysql-test/t/rpl_ndb_bank.test:
Auto merged
mysql-test/t/rpl_ndb_basic.test:
Auto merged
mysql-test/t/rpl_ndb_do_table.test:
Auto merged
mysql-test/t/rpl_ndb_idempotent.test:
Auto merged
mysql-test/t/rpl_ndb_stm_innodb.test:
Auto merged
mysql-test/t/rpl_ndb_sync.test:
Auto merged
sql/ha_ndbcluster_binlog.cc:
Auto merged
storage/ndb/test/run-test/daily-basic-tests.txt:
Auto merged
mysql-test/include/have_multi_ndb.inc:
manual merge
mysql-test/include/have_ndb.inc:
manual merge
mysql-test/t/rpl_ndb_commit_afterflush.test:
manual merge
mysql-test/t/rpl_ndb_ddl.test:
manual merge
mysql-test/t/rpl_ndb_innodb_trans.test:
manual merge
Fixed runtime to no longer allow the caching of queries with UDF calls.
mysql-test/r/udf.result:
Added a test that turns on caching and checks that querys calling UDFs don't get cached.
mysql-test/t/udf.test:
Added a test that turns on caching and checks that querys calling UDFs don't get cached.
sql/sql_yacc.yy:
Fixed code to set safe_to_cache_query=0 regardless if the function call is a UDF or SP. Where it was placed previously -- at the very end of the else testing for UDFs -- it only executed the statement if the function call was a stored procedure call.
Changed code to enforce that SQL_CACHE only in the first SELECT is used to turn on caching(as documented), but any SQL_NO_CACHE will turn off caching (not documented, but a useful behaviour, especially for machine generated queries). Added test cases to explicitly test the documented caching behaviour and test cases for the reported bug.
mysql-test/r/query_cache.result:
Added non-bug specific tests that ensure that only SQL_CACHE in the first SELECT is respected when encountered by the parser. These tests validate what is already documented, that only the outer most SELECTS can use the SQL_CACHE option to turn on caching. Because it would break existing SQL applications, we do not return an error if the SQL_CACHE expression is found in nested SELECTs. Also added test to validate nested SELECT can contain SQL_NO_CACHE and it will always turn off caching for the whole query.
Also added a bug specific test case to validate that the buggy behavior as reported has been fixed.
mysql-test/t/query_cache.test:
Added non-bug specific tests that ensure that only SQL_CACHE in the first SELECT is respected when encountered by the parser. These tests validate what is already documented, that only the outer most SELECTS can use the SQL_CACHE option to turn on caching. Because it would break existing SQL applications, we do not return an error if the SQL_CACHE expression is found in nested SELECTs. Also added test to validate nested SELECT can contain SQL_NO_CACHE and it will always turn off caching for the whole query.
Also added a bug specific test case to validate that the buggy behavior as reported has been fixed.
sql/sql_yacc.yy:
Added an explicit check to make sure "SELECT SQL_CACHE" only works on the first select in a query.
The parser will always hit the outermost SELECT first, and if the SQL_CACHE option is found it sets the safe_to_query flag in the lex. Then, if there are subseqent "uncachable" subqueries or functions, as it parses those elements it sets the safe_to_query to 0. However, this cause problems if nested SELECTs also used the SQL_CACHE option, because then it would set back safe_to_query to 1, even though there are uncacheable expressions previously parsed.
By adding the check to ensure only the first SELECT can turn caching on, it means a subsequent SQL_CACHE option can't turn caching back on after a uncacheable subsequery was already encountered.
into trift2.:/MySQL/M51/push-5.1
libmysqld/libmysqld.def:
Auto merged
BitKeeper/deleted/.del-mysql.sln~76a9ff1e793b3547:
Auto merged
BitKeeper/deleted/.del-mysqld.vcproj~6aa7b3f9c3e28fcb:
Auto merged
BitKeeper/deleted/.del-mysqldemb.vcproj~54c64d55ccc51a7c:
Auto merged
into trift2.:/MySQL/M50/push-5.0
libmysqld/libmysqld.def:
Auto merged
VC++Files/mysql.sln:
Fix for "vio" seems not to be applicable in 5.0.
VC++Files/mysqldemb/mysqldemb.vcproj:
5.0 differs too much from 4.1 to merge this up,
also in 5.0 we use "cmake" now.
VC++Files/sql/mysqld.vcproj:
The fix in 4.1 was a backport, no use to merge it upwards.
FLUSH LOGS should ignore SET GLOBAL READ_ONLY.
sql/lock.cc:
Sdditional fix-up for bug #26380: LOCK TABLES + FLUSH LOGS causes deadlock
- ignore SET GLOBAL READ_ONLY if MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY is set.
sql/mysql_priv.h:
Sdditional fix-up for bug #26380: LOCK TABLES + FLUSH LOGS causes deadlock
- MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY added.
sql/sql_base.cc:
Sdditional fix-up for bug #26380: LOCK TABLES + FLUSH LOGS causes deadlock
- ignore SET GLOBAL READ_ONLY as well if called form a logger.
When all table blocks were removed from the query cache the client session
hung in a tight loop waiting on an impossible condition while consuming a lot
of CPU.
This patch also corrects an error which caused valid tables to sometimes be
removed from the query cache.
mysql-test/r/query_cache.result:
Added test case to make sure server doesn't hang in a tight loop if last
table block is removed from the cache.
mysql-test/t/query_cache.test:
Added test case to make sure server doesn't hang in a tight loop if last
table block is removed from the cache.
sql/sql_cache.cc:
- Refactored loop over table blocks. The invalidate_table() function effects
the elements over which we iterate. The previous stop condition was broken
due to a compiler optimization error probably caused by the goto-statement
pointing out of the loop. The effect being that tables_blocks was never
checked for null values and thus the loop never terminated.
- The new implementation uses two while loops instead of a goto-statement.
The tables_blocks is a circular list which becomes null if the last table
block is removed from the list.
- make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_commit_after_flush.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_delete_no_where.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_insert_ignore.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_log.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_multi_update2.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_multi_update3.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_relayrotate.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_001.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_UUID.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_basic.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_blob.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_charset.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_func003.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_sp003.test:
make tests wait until ndb connects properly
mysql-test/extra/rpl_tests/rpl_row_sp006.test:
make tests wait until ndb connects properly
mysql-test/include/have_multi_ndb.inc:
make tests wait until ndb connects properly
mysql-test/include/have_ndb.inc:
make tests wait until ndb connects properly
mysql-test/include/ndb_not_readonly.inc:
make tests wait until ndb connects properly
mysql-test/t/rpl_commit_after_flush.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_delete_no_where.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_insert_ignore.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_multi_update2.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_multi_update3.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_2innodb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_2myisam.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_UUID.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_auto_inc.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_bank.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_basic.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_blob.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_blob2.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_charset.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_circular.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_circular_simplex.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_commit_afterflush.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_dd_advance.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_dd_basic.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_dd_partitions.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_ddl.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_delete_nowhere.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_do_db.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_do_table.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_extraCol.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_func003.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_idempotent.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_innodb2ndb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_innodb_trans.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_insert_ignore.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_load.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_log.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_multi.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_multi_update2.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_multi_update3.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_myisam2ndb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_relayrotate.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_rep_ignore.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_row_001.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_sp003.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_sp006.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_stm_innodb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_sync.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndb_trig004.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_ndbapi_multi.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_relayrotate.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_001.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_UUID.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_basic_2myisam.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_basic_3innodb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_basic_7ndb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_blob_innodb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_blob_myisam.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_charset.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_func003.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_log.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_log_innodb.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_sp003.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_row_sp006_InnoDB.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_stm_log.test:
make tests wait until ndb connects properly
mysql-test/t/rpl_truncate_7ndb.test:
make tests wait until ndb connects properly
mysql-test/include/ndb_master-slave.inc:
New BitKeeper file ``mysql-test/include/ndb_master-slave.inc''
The method select_insert::send_error does two things, it rolls back a statement
being executed and outputs an error message. But when a
nonexistent column is referenced, an error message has been published already and
there is no need to publish another.
Fixed by moving all functionality beyond publishing an error message into
select_insert::abort() and calling only that function.
mysql-test/r/errors.result:
Bug#28677: test result
mysql-test/t/errors.test:
Bug#28677: test case
sql/sql_class.h:
Bug#28677: overriding abort()
sql/sql_insert.cc:
Bug#28677:
- moved everything beyond producing an error message out of select_insert::send_error
and into new override select_insert::abort()
- made corresponding move of code from select_create::send_error to select_create::abort
sql/sql_select.cc:
Bug#28677: No need to pusblish an error here
into gleb.loc:/home/uchum/work/bk/5.1-opt
mysql-test/r/func_str.result:
Auto merged
mysql-test/t/func_str.test:
Auto merged
sql/item_strfunc.cc:
Auto merged
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
mysql-test/t/disabled.def:
Auto merged
mysql-test/t/ndb_basic.test:
Auto merged
mysql-test/t/ndb_insert.test:
Auto merged
mysql-test/t/ndb_restore.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisammrg/ha_myisammrg.h:
Auto merged
sql/share/errmsg.txt:
SCCS merged