When merging views into the enclosing statement
the ORDER BY clause of the view is merged to the
parent's ORDER BY clause.
However when the VIEW is merged into an UNION
branch the ORDER BY should be ignored.
Use of ORDER BY for individual SELECT statements
implies nothing about the order in which the rows
appear in the final result because UNION by default
produces unordered set of rows.
Fixed by ignoring the ORDER BY clause from the merge
view when expanded in an UNION branch.
mysql-test/r/view.result:
Bug #27786: test case
mysql-test/t/view.test:
Bug #27786: test case
sql/sql_lex.h:
Bug #27786: add a is_union() inlined function
Returns true if the unit represents an UNION.
sql/sql_view.cc:
Bug #27786: ignore ORDER BY in mergeable views when in UNION context
Fix test case: add drop table
mysql-test/t/innodb_mysql.test:
Fix test case: add drop table
mysql-test/r/innodb_mysql.result:
Fix test case: add drop table
Add test case for Bug #27210: INNODB ON DUPLICATE KEY UPDATE
mysql-test/r/innodb_mysql.result:
Add test case for Bug #27210: INNODB ON DUPLICATE KEY UPDATE
mysql-test/t/innodb_mysql.test:
Add test case for Bug #27210: INNODB ON DUPLICATE KEY UPDATE
into pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
client/mysql_upgrade.c:
Auto merged
mysql-test/r/mysql_upgrade.result:
Auto merged
mysql-test/t/mysql_upgrade.test:
Auto merged
client/mysql_upgrade.c:
Add defines for WEXITSTATUS
Pass arguments on command line instead of --defaults-file=<temp file>
mysql-test/r/mysql_upgrade.result:
When testing that mysql_upgrade detect if mysqlcheck fails, use an option that
is used on all platforms.
mysql-test/t/mysql_upgrade.test:
When testing that mysql_upgrade detect if mysqlcheck fails, use an option that
is used on all platforms.
scripts/comp_sql.c:
Some compilers have a max string length, insert a newline at
every 512th char in long strings
record in table)
key_restore function didn't work as intended in the case of
VARCHAR or BLOB fields, stored the restored key in field->ptr instead
of to_record.
That produced the wrong key so search returned wrong result
mysql-test/r/partition.result:
result added
mysql-test/t/partition.test:
testcase
sql/field.cc:
Field_blob::store_length made static
sql/field.h:
Field_blob::store_length and set_ptr functions implemented in slightly
different way
sql/ha_ndbcluster.cc:
set_ptr_offset used
sql/key.cc:
set key_part->field->ptr to the proper place inside the to_record
so the restored key will be placed there as key_restore
is supposed to behave
fixed the test
sql/ha_ndbcluster.cc
LOCK_plugin is used in ha_ndbcluster.cc
sql/sql_plugin.cc
LOCK_plugin is used in ha_ndbcluster.cc
mysql-test/t/ndb_dd_basic.test:
fixed the test
sql/ha_ndbcluster.cc:
LOCK_plugin is used in ha_ndbcluster.cc
sql/sql_plugin.cc:
LOCK_plugin is used in ha_ndbcluster.cc
into mysql.com:/home/ram/work/b22824/my50-b22824
sql/item_cmpfunc.cc:
Auto merged
mysql-test/r/strict.result:
merging
mysql-test/t/strict.test:
merging
into mysql.com:/home/ram/work/b26851/b26851.5.1
client/mysql.cc:
Auto merged
mysql-test/r/mysql.result:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/r/ndb_binlog_ddl_multi.result:
corrrection of test case
(this was actually a bug that had not been spotted, that was fixed by previous patch)
Fixes:
- Bug #26662: mysqld assertion when creating temporary (InnoDB) table on a tmpfs filesystem
Fix by not open(2)ing with O_DIRECT but rather calling fcntl(2) to set
this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
- Bug #23313: AUTO_INCREMENT=# not reported back for InnoDB tables
- Bug #21404: AUTO_INCREMENT value reset when Adding FKEY (or ALTER?)
Report the current value of the AUTO_INCREMENT counter to MySQL.
mysql-test/r/innodb.result:
Applied innodb-5.1-ss1404 snapshot
Revision r1404:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
mysql-test/t/innodb.test:
Applied innodb-5.1-ss1404 snapshot
Revision r1404:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
storage/innobase/handler/ha_innodb.cc:
Applied innodb-5.1-ss1404 snapshot
Revision r1404:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
storage/innobase/handler/ha_innodb.h:
Applied innodb-5.1-ss1404 snapshot
Revision r1404:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
storage/innobase/os/os0file.c:
Applied innodb-5.1-ss1404 snapshot
Revision r1395:
* Fix Bug#26662 by not open(2)ing with O_DIRECT but rather calling fcntl(2)
to set this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
* Add support for skipping the OS caching on Solaris by calling directio()
instead of fcntl().
Approved by: Heikki
Revision r1391:
Merge the bodies of os_file_handle_error() and os_file_handle_error_no_exit()
into a generic function which is called from both os_file_handle_error() and
os_file_handle_error_no_exit()
Approved by: Marko
storage/innobase/plug.in:
Applied innodb-5.1-ss1404 snapshot
Revision r1395:
* Fix Bug#26662 by not open(2)ing with O_DIRECT but rather calling fcntl(2)
to set this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
* Add support for skipping the OS caching on Solaris by calling directio()
instead of fcntl().
Approved by: Heikki
NULL MERGE: this ChangeSet will be null merged into mysql-5.1
Fixes:
- Bug #26662: mysqld assertion when creating temporary (InnoDB) table on a tmpfs filesystem
Fix by not open(2)ing with O_DIRECT but rather calling fcntl(2) to set
this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
- Bug #23313: AUTO_INCREMENT=# not reported back for InnoDB tables
- Bug #21404: AUTO_INCREMENT value reset when Adding FKEY (or ALTER?)
Report the current value of the AUTO_INCREMENT counter to MySQL.
innobase/configure.in:
Apply innodb-5.0-ss1405 snapshot
Revision r1396:
branches/5.0: Merge r1395 from trunk:
* Fix Bug#26662 by not open(2)ing with O_DIRECT but rather calling fcntl(2)
to set this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
* Add support for skipping the OS caching on Solaris by calling directio()
instead of fcntl().
innobase/os/os0file.c:
Apply innodb-5.0-ss1405 snapshot
Revision r1394:
branches/5.0: Merge r1391 from trunk:
Merge the bodies of os_file_handle_error() and os_file_handle_error_no_exit()
into a generic function which is called from both os_file_handle_error() and
os_file_handle_error_no_exit()
Revision r1396:
branches/5.0: Merge r1395 from trunk:
* Fix Bug#26662 by not open(2)ing with O_DIRECT but rather calling fcntl(2)
to set this flag immediately after open(2)ing. This way an error caused by
O_DIRECT not being supported can easily be ignored.
* Add support for skipping the OS caching on Solaris by calling directio()
instead of fcntl().
mysql-test/r/innodb.result:
Apply innodb-5.0-ss1405 snapshot
Revision r1405:
branches/5.0: Merge r1404 from trunk:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
mysql-test/t/innodb.test:
Apply innodb-5.0-ss1405 snapshot
Revision r1405:
branches/5.0: Merge r1404 from trunk:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
sql/ha_innodb.cc:
Apply innodb-5.0-ss1405 snapshot
Revision r1405:
branches/5.0: Merge r1404 from trunk:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
sql/ha_innodb.h:
Apply innodb-5.0-ss1405 snapshot
Revision r1405:
branches/5.0: Merge r1404 from trunk:
Report the current value of the AUTO_INCREMENT counter to MySQL.
(Bug #23313, Bug #21404)
ha_innobase::update_create_info(): New function, to report
the auto_increment_value.
BitKeeper/etc/ignore:
Added client/log_event_old.cc client/log_event_old.h client/rpl_record_old.cc client/rpl_record_old.h libmysqld/log_event_old.cc libmysqld/rpl_record.cc libmysqld/rpl_record_old.cc to the ignore list
mysql-test/include/show_binlog_events2.inc:
New BitKeeper file ``mysql-test/include/show_binlog_events2.inc''
into siva.hindu.god:/home/tsmith/m/bk/maint/51
client/mysql_upgrade.c:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/type_datetime.result:
Auto merged
mysys/my_alloc.c:
Auto merged
sql/field.h:
Auto merged
sql/item.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
- test case
sql/ha_ndbcluster_binlog.cc:
drop table not logged when it should
mysql-test/r/ndb_binlog_log_bin.result:
New BitKeeper file ``mysql-test/r/ndb_binlog_log_bin.result''
mysql-test/t/ndb_binlog_log_bin.test:
New BitKeeper file ``mysql-test/t/ndb_binlog_log_bin.test''
into pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint
BitKeeper/etc/ignore:
auto-union
scripts/Makefile.am:
Auto merged
sql/mysql_priv.h:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~1:
Auto merged
client/mysql_upgrade.c:
Use remote
mysql-test/r/mysql_upgrade.result:
Use remote
Makefile.am:
Merge "build scripts/ a little earlier"
include/my_global.h:
Merge
into mysql.com:/home/svoj/devel/mysql/BUG24342/mysql-5.1-engines
mysql-test/r/merge.result:
Auto merged
mysql-test/t/merge.test:
Auto merged
storage/myisam/mi_rkey.c:
Auto merged
storage/myisam/myisamdef.h:
Auto merged
storage/myisammrg/myrg_rkey.c:
SCCS merged
into pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
BitKeeper/etc/ignore:
auto-union
CMakeLists.txt:
Auto merged
Makefile.am:
Auto merged
include/my_global.h:
Auto merged
sql/mysql_priv.h:
Auto merged
into mysql.com:/home/svoj/devel/mysql/BUG24342/mysql-5.0-engines
myisam/mi_rkey.c:
Auto merged
myisam/myisamdef.h:
Auto merged
myisammrg/myrg_rkey.c:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/r/merge.result:
SCCS merged
- Improve mysql_upgrade and add comments describing it's logic
- Don't look for mysql and mysqlcheck randomly, use dir where mysql_upgrade
was started from
- Don't look for mysql_fix_privilege_tables.sql randomly, compile
in the mysql_fix_privilege_tables.sql file and use that to upgrade
the system tables of MySQL
- Check for any unexpected error returned from runnning the mysql_fix_privilege_tables SQL
- Fix bug#26639, bug#24248 and bug#25405
BitKeeper/etc/ignore:
Added scripts/comp_sql scripts/mysql_fix_privilege_tables_sql.c to the ignore list
CMakeLists.txt:
Build files also in scripts/
Makefile.am:
Build scripts/ a little earlier to make
the scripts/mysql_fix_privilege_tables_sql.c file available
when client/ is built
client/mysql_upgrade.c:
Updated version of mysql_upgrade with comments and logical functions
include/my_global.h:
Move IF_WIN macro to my_global.h fr from sql/mysql_priv.h
mysql-test/r/mysql_upgrade.result:
Update result
mysql-test/t/mysql_upgrade.test:
Add more tests for different bugs related to mysql_upgrade
scripts/Makefile.am:
Build comp_sql and mysql_fix_privilege_tables_sql.c
sql/mysql_priv.h:
Move IF_WIN macro to my_global.h fr from sql/mysql_priv.h
scripts/CMakeLists.txt:
New BitKeeper file ``scripts/CMakeLists.txt''
scripts/comp_sql.c:
New BitKeeper file ``scripts/comp_sql.c''
into mysql.com:/home/svoj/devel/mysql/BUG25951/mysql-5.1-engines
mysql-test/r/fulltext.result:
Auto merged
mysql-test/t/fulltext.test:
Auto merged
sql/item_func.cc:
Auto merged
conditions when executing an equijoin query with WHERE condition
containing a subquery predicate of the form join_attr NOT IN (SELECT ...).
To resolve a problem of the correct evaluation of the expression
attr NOT IN (SELECT ...)
an array of guards is created to make it possible to filter out some
predicates of the EXISTS subquery into which the original subquery
predicate is transformed, in the cases when a takes the NULL value.
If attr is defined as a field that cannot be NULL than such an array
is not needed and is not created.
However if the field a occurred also an an equijoin predicate t2.a=t1.b
and table t1 is accessed before table t2 then it may happen that the
the EXISTS subquery is pushed down to the condition evaluated just after
table t1 has been accessed. In this case any occurrence of t2.a is
substituted for t1.b. When t1.b takes the value of NULL an attempt is
made to turn on the corresponding guard. This action caused a crash as
no guard array had been created.
Now the code of Item_in_subselect::set_cond_guard_var checks that the guard
array has been created before setting a guard variable on. Otherwise the
method does nothing. It cannot results in returning a row that could be
rejected as the condition t2.a=t1.b will be checked later anyway.
mysql-test/r/subselect3.result:
Added a test case for bug #27870.
mysql-test/t/subselect3.test:
Added a test case for bug #27870.
sql/item_subselect.h:
Fixed bug #27870. The bug that causes crashes manifests itself at some
conditions when executing an equijoin query with WHERE condition
containing a subquery predicate of the form join_attr NOT IN (SELECT ...).
Forced Item_in_subselect::set_cond_guard_var to check that the guard
array has been created before setting a guard variable on. Otherwise the
method does nothing.
into bk-internal.mysql.com:/data0/bk/mysql-5.0-marvel
sql/ha_ndbcluster.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
into bk-internal.mysql.com:/data0/bk/mysql-5.1-marvel
mysql-test/r/strict.result:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
Added missed DROP privilege check on the original table for RENAME TABLE command.
mysql-test/r/grant.result:
Fix for bug #27515: DROP previlege is not required anymore for RENAME TABLE
- test result.
mysql-test/t/grant.test:
Fix for bug #27515: DROP previlege is not required anymore for RENAME TABLE
- test case.
sql/sql_parse.cc:
Fix for bug #27515: DROP previlege is not required anymore for RENAME TABLE
- added DROP privilege check on the original table for RENAME TABLE command.
(Removes some warnings about UNIX_TIMESTAMP from the slave.err logs)
Marked federated_server as a '--big-test'
Change error in net_clear to 'Note', as it interfered with mysql-test-run.
client/mysqltest.c:
More DBUG messages
Adding missing DBUG_RETURN
mysql-test/extra/rpl_tests/rpl_max_relay_size.test:
Added missing sync_slave_with_master
mysql-test/extra/rpl_tests/rpl_relayrotate.test:
Added missing sync_slave_with_master
mysql-test/include/federated.inc:
Don't do stop slave before the slave has started properly
(Removes some warnings about UNIX_TIMESTAMP from the slave.err logs)
mysql-test/include/federated_cleanup.inc:
Trivial cleanup
mysql-test/t/federated_server.test:
Don't run this unless under --big-test
Made test-loop smaller. (We will find out errors in code over time, as the test is run under a lot of difference machines which will compensate for the smaller loop)
mysql-test/t/rpl_flushlog_loop.test:
Added missing sync_slave_with_master
sql/net_serv.cc:
Change error to Note (low level warning), as it interfered with mysql-test-run.
This is probably fine as we in some context on sever shutdown can get information about connection shutdown on the connection while we are doing a query at the same time.
Still, in normal context one should get this, so it's good to have it in the log as it enables one to find errors easier.
sql/slave.cc:
Added reason to why things failed to error message
mysql-test/r/rpl_ndb_circular_simplex.result:
Result change
mysql-test/t/rpl_ndb_circular_simplex.test:
Using master port on slave side instead of slave port (which should be
used on master side).