into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into weblab.(none):/home/marcsql/TREE/mysql-5.1-24562-merge
mysql-test/r/alter_table.result:
Auto merged
mysql-test/t/alter_table.test:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/ndb_types.result:
update results
mysql-test/t/ndb_types.test:
Sleep a bit longer, to ensure that timestamp changes between:
set @now = now();
and:
insert into/update t1
Test case failed (select timestamp>@now from t1 ==> 0, should be 1), and passed when run again. This should(?) avoid that fluke.
Clean up test file a bit while I'm here.
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
client/mysqlbinlog.cc:
Auto merged
configure.in:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
storage/myisam/mi_packrec.c:
Use local
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/50
client/mysqlbinlog.cc:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_parse.cc:
Manual merge
crashes server
Check for null value is reliable only after calling some of the
val_xxx() methods. If the val_xxx() method is not called
the null_value flag will be set only for certain types of NULL
values (like SQL constant NULLs for example).
This caused a crash while trying to dereference a NULL pointer
that is returned by val_str() for NULL values.
Fixed by swapping the order of val_xxx() and null_value check.
mysql-test/r/udf.result:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- test case
mysql-test/t/udf.test:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- test case
sql/item_func.cc:
Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
- reliably check null_value
into siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/51
BUILD/check-cpu:
Auto merged
configure.in:
Auto merged
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/type_enum.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/mysqladmin.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/type_enum.test:
Auto merged
mysql-test/t/view.test:
Auto merged
mysys/my_read.c:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/table.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
server-tools/instance-manager/instance.cc:
Use remote (global 5.1 version)
sql/unireg.cc:
Use remote (5.1 global version)
mysql-test/t/trigger.test:
Manual merge
server-tools/instance-manager/guardian.cc:
Manual merge
into mysql.com:/usr/home/ram/work/bug22533/my50-bug22533
mysql-test/r/type_bit.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/select.result:
Auto merged
mysql-test/r/type_bit.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/r/range.result:
Auto merged
mysql-test/r/type_bit.result:
Auto merged
mysql-test/r/type_bit_innodb.result:
Auto merged
sql/field.cc:
Auto merged
The problem was that if a prepared statement accessed a view, the
access to the tables listed in the query after that view was done in
the security context of the view.
The bug was in the assigning of the security context to the tables
belonging to a view: we traversed the list of all query tables
instead. It didn't show up in the normal (non-prepared) statements
because of the different order of the steps of checking privileges
and descending into a view for normal and prepared statements.
The solution is to traverse the list and stop once the last table
belonging to the view was processed.
mysql-test/r/view_grant.result:
Add result for bug#24404: strange bug with view+permission+prepared
statement.
mysql-test/t/view_grant.test:
Add test case for bug#24404: strange bug with view+permission+prepared
statement.
sql/sql_view.cc:
Remove dead line.
When setting security context, we should traverse the list of tables
belonging to a given view, not all query tables. We achieve that by
stopping at the first table past view_tables_tail.
into mysql.com:/usr/home/ram/work/bug22533/my51-bug22533
mysql-test/t/range.test:
Auto merged
sql/item.cc:
Auto merged
mysql-test/r/select.result:
merging
mysql-test/t/select.test:
merging
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses any NOT expression into extra parentheses to avoid
incorrect stored representations of views that use the '!' operators.
Without this change when a view was created that contained
the expression !0*5 its stored representation contained not this
expression but rather the expression not(0)*5 .
The operator '!' is of a higher precedence than '*', while NOT is
of a lower precedence than '*'. That's why the expression !0*5
is interpreted as not(0)*5, while the expression not(0)*5 is interpreted
as not((0)*5) unless sql_mode is set to HIGH_NOT_PRECEDENCE.
Now we translate !0*5 into (not(0))*5.
mysql-test/r/sp-code.result:
Adjusted results after the fix of bug 25580.
mysql-test/r/subselect.result:
Adjusted results after the fix of bug 25580.
mysql-test/r/view.result:
Added a test case for bug #25580.
mysql-test/t/view.test:
Added a test case for bug #25580.
sql/item_cmpfunc.cc:
Fixed bug #25580: incorrect stored representations of views in cases
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses the NOT expression into extra parenthesis to avoid
incorrect stored representations of views that use the '!' operators.
sql/item_cmpfunc.h:
Fixed bug #25580: incorrect stored representations of views in cases
when they contain the '!' operator.
Added an implementation for the method Item_func_not::print.
The method encloses the NOT expression into extra parenthesis to avoid
incorrect stored representations of views that use the '!' operators.
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
configure.in:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/field.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
mysql-test/r/ps.result:
Update result files.
mysql-test/t/ps.test:
Disable result ouptut of SHOW CREATE TABLE: DATA DIRECTORY option
may be present or absent from the output depending on the build
otpions and the operating system, so the output is not consistent
across supported platforms.
sql/mysqld.cc:
Remove a tricky #ifdef dependency of --use-symbolic-links on PURIFY
added in 2002: DEBUG options should not influence server functionality.
This backfired by producing different output of SHOW CREATE TABLE
depending on the build options (see also Bug#25677 "With
--skip-symbolic-links option on, DATA DIRECTORY clause
is silently ignored".
into pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-engines
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/r/myisam.result:
SCCS merged
mysql-test/t/myisam.test:
SCCS merged
Bug #25000 myisam.test fails on 'pb-valgrind-*' Valgrind
- Move tests that need symlink to symlink.test
mysql-test/r/myisam.result:
- Move tests that need symlink to symlink.test
mysql-test/r/symlink.result:
- Move tests that need symlink to symlink.test
mysql-test/t/myisam.test:
- Move tests that need symlink to symlink.test
mysql-test/t/symlink.test:
- Move tests that need symlink to symlink.test
into pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
mysys/my_read.c:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/field.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
into pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
mysql-test/t/mysqladmin.test:
Auto merged
mysys/mf_iocache.c:
Auto merged
mysys/my_read.c:
Auto merged
mysys/my_seek.c:
Auto merged
sql/sql_parse.cc:
Auto merged
into bodhi.local:/opt/local/work/mysql-5.1-runtime
BitKeeper/deleted/.del-libmysqld.dsp~78dc6a589e5a4149:
Auto merged
BitKeeper/deleted/.del-mysql.dsw~7ea9e16395f139f4:
Auto merged
BitKeeper/deleted/.del-mysql_explain_log.sh~5ddc62808e16bd57:
Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
Auto merged
BitKeeper/deleted/.del-mysqldemb.dsp~1baf8c0e59ee9f7e:
Auto merged
BitKeeper/deleted/.del-mysqldmax.dsp~5d213fe1c204142e:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/select.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysys/my_read.c:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/innobase/buf/buf0buf.c:
Auto merged
storage/innobase/dict/dict0dict.c:
Auto merged
storage/innobase/fil/fil0fil.c:
Auto merged
storage/innobase/ha/ha0ha.c:
Auto merged
storage/innobase/include/hash0hash.h:
Auto merged
storage/innobase/lock/lock0lock.c:
Auto merged
storage/innobase/log/log0recv.c:
Auto merged
support-files/MySQL-shared-compat.spec.sh:
Auto merged
configure.in:
Use local
sql/sql_parse.cc:
Use local
sql/sql_table.cc:
Use local
mysql-test/t/ps.test:
SCCS merged
into bodhi.local:/opt/local/work/mysql-5.1-runtime
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
into bodhi.local:/opt/local/work/mysql-5.1-root
BitKeeper/deleted/.del-mysql.dsw~7ea9e16395f139f4:
Auto merged
mysql-test/r/view.result:
Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
Auto merged
BitKeeper/deleted/.del-mysqldemb.dsp~1baf8c0e59ee9f7e:
Auto merged
BitKeeper/deleted/.del-mysqldmax.dsp~5d213fe1c204142e:
Auto merged
mysys/my_read.c:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
server-tools/instance-manager/listener.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/heap/hp_block.c:
Auto merged
storage/heap/hp_write.c:
Auto merged
storage/innobase/buf/buf0buf.c:
Auto merged
storage/innobase/dict/dict0dict.c:
Auto merged
storage/innobase/fil/fil0fil.c:
Auto merged
storage/innobase/ha/ha0ha.c:
Auto merged
storage/innobase/include/hash0hash.h:
Auto merged
storage/innobase/lock/lock0lock.c:
Auto merged
storage/innobase/log/log0recv.c:
Auto merged
support-files/MySQL-shared-compat.spec.sh:
Auto merged
tests/mysql_client_test.c:
Auto merged
BitKeeper/deleted/.del-libmysqld.dsp~78dc6a589e5a4149:
SCCS merged
mysql-test/t/view.test:
Manual merge.
into olga.mysql.com:/home/igor/mysql-5.0-opt
mysql-test/r/range.result:
Auto merged
mysql-test/t/range.test:
Auto merged
sql/opt_range.h:
Manual merge.
The optimizer needs to evaluate whether predicates are better
evaluated using an index. IN is one such predicate.
To qualify an IN predicate must involve a field of the index
on the left and constant arguments on the right.
However whether an expression is a constant can be determined only
by knowing the preceding tables in the join order.
Assuming that only IN predicates with expressions on the right that
are constant for the whole query qualify limits the scope of
possible optimizations of the IN predicate (more specifically it
doesn't allow the "Range checked for each record" optimization for
such an IN predicate.
Fixed by not pre-determining the optimizability of the IN predicate
in the case when all right IN operands are not SQL constant expressions
mysql-test/r/func_in.result:
BUG#20420: optimizer reports wrong keys on left join with IN
- test case
mysql-test/t/func_in.test:
BUG#20420: optimizer reports wrong keys on left join with IN
- test case
sql/item_cmpfunc.h:
BUG#20420: optimizer reports wrong keys on left join with IN
- cannot decide on the optimizability of a function without
knowing the tables before it in the join order
mysql-test/r/sp.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into bodhi.local:/opt/local/work/mysql-4.1-4968-to-push
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Manual merge.
sql/sql_table.cc:
Manual merge.
into mockturtle.local:/home/dlenev/src/mysql-5.1-bg20390
mysql-test/t/ndb_lock.test:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/r/ndb_lock.result:
Manual merge.
added new field 'REFERENCED_TABLE_NAME' to 'referential_constraints' table
field 'UNIQUE_CONSTRAINT_NAME' contains the name of the referenced index
mysql-test/r/information_schema_inno.result:
result fix
mysql-test/t/information_schema_inno.test:
test fix
sql/sql_show.cc:
added new field 'REFERENCED_TABLE_NAME' to 'referential_constraints' table
field 'UNIQUE_CONSTRAINT_NAME' contains the name of the referenced index
sql/table.h:
added 'referenced_key_name' member to 'st_foreign_key_info' struct
storage/innobase/handler/ha_innodb.cc:
added the filling of referenced key name
of untouched rows in full table scans".
SELECT ... FOR UPDATE/LOCK IN SHARE MODE statements as well as
UPDATE/DELETE statements which were executed using full table
scan were not releasing locks on rows which didn't satisfy
WHERE condition.
This bug surfaced in 5.0 and affected NDB tables. (InnoDB tables
intentionally don't support such unlocking in default mode).
This problem occured because code implementing join didn't call
handler::unlock_row() for rows which didn't satisfy part of condition
attached to this particular table/level of nested loop. So we solve
the problem adding this call.
Note that we already had this call in place in 4.1 but it was lost
(actually not quite correctly placed) when we have introduced nested
joins.
Also note that additional QA should be requested once this patch is
pushed as interaction between handler::unlock_row() and many recent
MySQL features such as subqueries, unions, views is not tested enough.
mysql-test/r/ndb_lock.result:
Enabled back part of the test that covers bug #20390 "SELECT FOR
UPDATE does not release locks of untouched rows in full table scans".
Adjusted test in such way that it now covers both execution paths
in which we unlock non-matching rows inspected during table scan.
mysql-test/t/ndb_lock.test:
Enabled back part of the test that covers bug #20390 "SELECT FOR
UPDATE does not release locks of untouched rows in full table scans".
Adjusted test in such way that it now covers both execution paths
in which we unlock non-matching rows inspected during table scan.
sql/sql_select.cc:
evaluate_join_record() should call handler::unlock_row() for records
which don't satisfy condition which was pushed-down to this table/level
of nested loop.
We just put back the thing that we already have in 4.1 and which was lost
when we have introduced nested joins.
for queries using 'range checked for each record'.
The problem was fixed in 5.0 by the patch for bug 12291.
This patch down-ported the corresponding code from 5.0 into
QUICK_SELECT::init() and added a new test case.
mysql-test/r/range.result:
Added a test case for bug #24776.
mysql-test/t/range.test:
Added a test case for bug #24776.
sql/opt_range.h:
Fixed bug #24776: an assertion abort in handler::ha_index_init
for queries using 'range checked for each record'.
The problem was fixed in 5.0 by the patch for bug 12291.
The patch for 4.1 down-ported the corresponding code from 5.0 into
QUICK_SELECT::init().
in a select list.
The objects of the Item_trigger_field class inherited the implementations
of the methods copy_or_same, get_tmp_table_item and get_tmp_table_field
from the class Item_field while they rather should have used the default
implementations defined for the base class Item.
It could cause catastrophic problems for triggers that used SELECTs
with select list containing trigger fields such as NEW.<table column>
under DISTINCT.
mysql-test/r/trigger.result:
Added a test case for bug #25398.
mysql-test/t/trigger.test:
Added a test case for bug #25398.
- Make the code produce correct result: use an array of triggers to turn on/off equalities for each
compared column. Also turn on/off optimizations based on those equalities.
- Make EXPLAIN output show "Full scan on NULL key" for tables for which we switch between
ref/unique_subquery/index_subquery and ALL access.
- index_subquery engine now has HAVING clause when it is needed, and it is
displayed in EXPLAIN EXTENDED
- Fix incorrect presense of "Using index" for index/unique-based subqueries (BUG#22930)
// bk trigger note: this commit refers to BUG#24127
mysql-test/r/ndb_subquery.result:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Updated test results (checked)
mysql-test/r/subselect.result:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Updated test results (checked)
mysql-test/r/subselect2.result:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Updated test results (checked)
mysql-test/r/subselect3.result:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Testcases
mysql-test/t/subselect3.test:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Testcases
sql/item_cmpfunc.cc:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- For row-based IN subqueries, use one flag per each column. Set the flags appropriately before
running the subquery.
sql/item_cmpfunc.h:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Added Item_func_trig_cond::get_triv_var()
sql/item_subselect.cc:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Item_subselect::exec() and subselect_*_engine::exec() don't have parameter
anymore - now Item_subselect owns the pushed down predicates guard flags.
- A correct set of conditional predicates is now pushed into row-based IN
subquery.
- select_indexsubquery_engine now has "HAVING clause" (needed for correct query
results), and it is shown in EXPLAIN EXTENDED
sql/item_subselect.h:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Item_subselect::exec() and subselect_*_engine::exec() don't have parameter
anymore - now Item_subselect owns the pushed down predicates guard flags.
- A correct set of conditional predicates is now pushed into row-based IN
subquery.
- select_indexsubquery_engine now has "HAVING clause" (needed for correct query
results), and it is shown in EXPLAIN EXTENDED
sql/mysql_priv.h:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Added "in_having_cond" special Item name
sql/mysqld.cc:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Added "in_having_cond" special Item name
sql/sql_lex.h:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
sql/sql_select.cc:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Make "ref" analyzer be able to work with conditional equalities
- Fix subquery optimization code to match the changes in what kinds of
conditions are pushed down into subqueries
- Fix wrong EXPLAIN output in some queries with subquery (BUG#22390)
sql/sql_select.h:
BUG#24127: wrong result for (null,not-null) IN (SELECT a,b ...)
- Make "ref" analyzer be able to work with conditional equalities
- Fix wrong EXPLAIN output in some queries with subquery (BUG#22390)
When transforming "oe IN (SELECT ie ...)" wrap the pushed-down predicates
iff "oe can be null", not "ie can be null".
The fix doesn't cover row-based subqueries, those will be fixed in #24127.
mysql-test/r/subselect.result:
BUG#24085: Wrong result for NULL IN (SELECT not_null_val FROM ...)
Update the test results (checked)
mysql-test/r/subselect3.result:
BUG#24085: Wrong result for NULL IN (SELECT not_null_val FROM ...)
- Testcase
mysql-test/t/subselect3.test:
BUG#24085: Wrong result for NULL IN (SELECT not_null_val FROM ...)
- Testcase
sql/item_subselect.cc:
BUG#24085: Wrong result for NULL IN (SELECT not_null_val FROM ...)
When transforming "oe IN (SELECT ie ...)" we should make special
provisions (wrap the pushed predicates) if we can encounter
NULL IN (SELECT ...), i.e. when oe->maybe_null. The code was checking
for ie->maybe_null instead, fixed it for single value based subqueries.
Row-based subqueries (e.g. (a,b) IN (SELECT c,d ...)) are not fixed
because they won't produce correct results for several other reasons
(filed as #24085)
into bodhi.local:/opt/local/work/mysql-5.1-runtime
mysql-test/t/csv.test:
Auto merged
server-tools/instance-manager/guardian.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
into weblab.(none):/home/marcsql/TREE/mysql-5.1-22687
libmysqld/Makefile.am:
Auto merged
sql/Makefile.am:
Auto merged
BitKeeper/deleted/.del-item_uniq.cc:
Auto merged
BitKeeper/deleted/.del-item_uniq.h:
Auto merged
sql/item.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/lex.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
fix not aligned or non 32-bit values in "smart" scan
mysql-test/r/ndb_partition_key.result:
testcase
mysql-test/t/ndb_partition_key.test:
ndb - bug
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Fix unaligned or non-32-bit values in "smart scan"
into moonbone.local:/work/latest-5.0-opt-mysql
mysql-test/t/func_str.test:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/sql_delete.cc:
Auto merged
mysql-test/r/delete.result:
Manual merge
mysql-test/r/func_str.result:
Manual merge
mysql-test/t/delete.test:
Manual merge
Subselect's engine checks table->status field to determine if the
record was properly found when we use keyread upon the table.
Partition engine checks all the partitions for given key
before return. So if matching record was found in the first
partition and no matching records were found in the second,
we have table->status == NOT_FOUND after the function, what
makes subselects to skip matching records.
The patch adds table->status= 0 if we actually found something.
mysql-test/r/partition.result:
result fixed
mysql-test/t/partition.test:
testcase
sql/ha_partition.cc:
table->status set to 0 if we found something in previous partitions
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
client/mysqldump.c:
Auto merged
configure.in:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
libmysqld/CMakeLists.txt:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/r/rpl_row_tabledefs_3innodb.result:
Auto merged
mysql-test/r/rpl_sp.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
mysys/my_thr_init.c:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/handler.cc:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log.h:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/rpl_injector.cc:
Auto merged
sql/rpl_injector.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_locale.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
unittest/mysys/my_atomic-t.c:
Auto merged
sql/log_event.cc:
Manual merge main->rpl
sql/mysqld.cc:
Manual merge main->rpl
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
client/mysqlbinlog.cc:
Auto merged
client/mysqldump.c:
Auto merged
include/my_pthread.h:
Auto merged
mysql-test/t/disabled.def:
Auto merged
mysys/my_thr_init.c:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_locale.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
mysql-test/r/order_by.result:
Auto merged
mysql-test/t/order_by.test:
Auto merged
sql/item.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
mysql-test/r/join.result:
manual merge
mysql-test/t/join.test:
manual merge
ENUMs weren't allowed to have character 0xff, a perfectly good
character in some locales. This was circumvented by mapping 0xff in
ENUMs to ',', thereby prevent actual commas from being used. Now if
0xff makes an appearance, we find a character not used in the enum and
use that as a separator. If no such character exists, we throw an
error.
Any solution would have broken some sort of existing behaviour. This
solution should serve both fractions (those with 0xff and those with
',' in their enums), but WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE
WITH 0xff IN THEIR ENUMS. :-/ That is, mysqldump with their current
server, and restore when upgrading to one with this patch.
mysql-test/r/type_enum.result:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
mysql-test/t/type_enum.test:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
sql/table.cc:
Bug#24660: "enum" field type definition problem
Revert fix for Bug#20922.
sql/unireg.cc:
Bug#24660: "enum" field type definition problem
Use a field-separator for ENUM-values that is not part of those values. If impossible,
throw error.
According to some internal communication, these two functions are place
holders for future enhancements. Because they use a variable number of
parameters, the implementation defined a reserved keyword for them in the
parser grammar.
Unfortunately, doing so creates a bug similar to Bug 21114 reported for the
function FORMAT.
In the 5.1 code base, due to improvements in the code implemented with bug
21114, having a reserved keyword for functions with a variable number of
arguments is not needed any more by the implementation.
As a result, this fix removes the place-holder implementation, and removes
the unnecessary reserved keywords. Should the functions UNIQUE_USERS and
GROUP_UNIQUE_USERS be finally implemented in a later release, the
implementation should sub class Create_native_func in sql/item_create.cc.
For example, see the class Create_func_concat.
BitKeeper/deleted/.del-item_uniq.cc:
Rename: sql/item_uniq.cc -> BitKeeper/deleted/.del-item_uniq.cc
BitKeeper/deleted/.del-item_uniq.h:
Rename: sql/item_uniq.h -> BitKeeper/deleted/.del-item_uniq.h
libmysqld/Makefile.am:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
mysql-test/r/parser.result:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
mysql-test/t/parser.test:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/Makefile.am:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/item.h:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/item_sum.h:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/lex.h:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/mysql_priv.h:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
sql/sql_yacc.yy:
Remove native functions UNIQUE_USERS() and GROUP_UNIQUE_USERS().
Currently in the ONLY_FULL_GROUP_BY mode no hidden fields are allowed in the
select list. To ensure this each expression in the select list is checked
to be a constant, an aggregate function or to occur in the GROUP BY list.
The last two requirements are wrong and doesn't allow valid expressions like
"MAX(b) - MIN(b)" or "a + 1" in a query with grouping by a.
The correct check implemented by the patch will ensure that:
any field reference in the [sub]expressions of the select list
is under an aggregate function or
is mentioned as member of the group list or
is an outer reference or
is part of the select list element that coincide with a grouping element.
The Item_field objects now can contain the position of the select list
expression which they belong to. The position is saved during the
field's Item_field::fix_fields() call.
The non_agg_fields list for non-aggregated fields is added to the SELECT_LEX
class. The SELECT_LEX::cur_pos_in_select_list now contains the position in the
select list of the expression being currently fixed.
sql/item.cc:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
The Item_field objects now contain the position of the select list
expression which they belong to. The position is saved at the field's
Item_field::fix_fields() call.
sql/item.h:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
The Item_field objects now can store the position in the select list of the
expression to which they are belongs to.
sql/mysql_priv.h:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
Added the UNDEF_POS constant.
sql/sql_base.cc:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
Now the setup_fields() function maintains the cur_pos_in_select_list variable.
sql/sql_lex.cc:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
Set the cur_pos_in_select_list variable and the non_agg_fields list to their initial state.
sql/sql_lex.h:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
The non_agg_fields list for non-aggregated fields is added to the SELECT_LEX
class. The SELECT_LEX::cur_pos_in_select_list now stores the position in the
select list of the expression being currently fixed.
sql/sql_select.cc:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
Each select now keeps the list of fields that aren't
used under any aggregate function. If an expression from the select list
isn't found in the GROUP BY list the setup_group() function additionally
checks whether non-aggregated fields occur in that expression.
If there at least one such field and it isn't found in the GROUP BY list
then an error is thrown.
sql/sql_union.cc:
Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
Clean up of the non_agg_fields list.
mysql-test/r/group_by.result:
Added a test case for the bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
mysql-test/t/group_by.test:
Added a test case for the bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode.
into bodhi.local:/opt/local/work/mysql-5.1-runtime
mysql-test/t/trigger.test:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
storage/csv/ha_tina.cc:
Auto merged
mysql-test/r/csv.result:
Manual merge.
mysql-test/t/csv.test:
Manual merge.
into bodhi.local:/opt/local/work/mysql-5.0-runtime
heap/hp_block.c:
Auto merged
mysql-test/r/view.result:
Auto merged
server-tools/instance-manager/listener.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
tests/mysql_client_test.c:
Auto merged
heap/hp_write.c:
SCCS merged
aliases ignored
When a column reference to a column in JOIN USING is resolved and a new
Item is created for this column the user defined name was lost.
This fix preserves the alias by setting the name of the new Item to the
original alias.
mysql-test/r/join.result:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- test case
mysql-test/t/join.test:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- test case
sql/sql_base.cc:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- take the alias of the Item to be replaced and set it into the newly
allocated Item.
into bk-internal.mysql.com:/data0/bk/mysql-5.0-marvel
libmysqld/lib_sql.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
include/my_global.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/mysqladmin.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqlbug.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
Makefile.am:
manual merge
mysql-test/t/trigger.test:
manual merge
strings/ctype-extra.c:
manual merge
correctly.
The Item_func::print method was used to print the Item_func_encode and the
Item_func_decode objects. The last argument to ENCODE and DECODE functions
is a plain C string and thus Item_func::print wasn't able to print it.
The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
mysql-test/t/func_str.test:
Added a test case for bug#23409: Arguments of the ENCODE() and the
> DECODE() functionswere not printed correctly.
mysql-test/r/func_str.result:
Added a test case for bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
sql/item_strfunc.h:
Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
The print() method is added to the Item_func_encode class.
sql/item_strfunc.cc:
Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
WHERE is present.
If a DELETE statement with ORDER BY and LIMIT contains a WHERE clause
with conditions that for sure cannot be used for index access (like in
WHERE @var:= field) the execution always follows the filesort path.
It happens currently even when for the above case there is an index that
can be used to speedup sorting by the order by list.
Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
clause conditions that cannot be used to build any quick select then
the mysql_delete() tries to use an index like there is no WHERE clause at all.
mysql-test/t/delete.test:
Added a test case for bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting
WHERE is present.
mysql-test/r/delete.result:
Added a test case for bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting WHERE is present.
sql/sql_delete.cc:
Bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting WHERE is present.
Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
clause conditions that cannot be used to build any quick select then
the mysql_delete() tries to use an index like there is no WHERE clause at all.
into zim.(none):/home/brian/mysql/archive-format-5.1
storage/archive/Makefile.am:
Auto merged
storage/archive/archive_test.c:
Auto merged
storage/archive/azio.c:
Auto merged
storage/archive/ha_archive.h:
Auto merged
storage/archive/ha_archive.cc:
Merge
mysql-test/r/wait_timeout.result:
Added two possible error cases for a test. Depending
on a platform, either errno can occur and is correct.
Possible errors are CR_SERVER_GONE_ERROR and
CR_SERVER_LOST
mysql-test/t/wait_timeout.test:
Added two possible error cases for a test. Depending
on a platform, either errno can occur and is correct.
Possible errors are CR_SERVER_GONE_ERROR and
CR_SERVER_LOST
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
libmysql/libmysql.c:
Auto merged
mysql-test/r/join_nested.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/type_binary.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/type_newdecimal.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
sql/field.h:
Auto merged
sql/filesort.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql-common/client.c:
Auto merged
sql-common/my_time.c:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.cc:
Auto merged
strings/decimal.c:
Auto merged
sql/mysqld.cc:
manual merge
sql/sql_base.cc:
manual merge
In the method Item_field::fix_fields we try to resolve the name of
the field against the names of the aliases that occur in the select
list. This is done by a call of the function find_item_in_list.
When this function finds several occurrences of the field name
it sends an error message to the error queue and returns 0.
Yet the code did not take into account that find_item_in_list
could return 0 and tried to dereference the returned value.
mysql-test/r/order_by.result:
Added a test case for bug #25427.
mysql-test/t/order_by.test:
Added a test case for bug #25427.
sql/item.cc:
Fixed bug #25427.
In the method Item_field::fix_fields we try to resolve the name of
the field against the names of the aliases that occur in the select
list. This is done by a call of the function find_item_in_list.
When this function finds several occurrences of the field name
it sends an error message to the error queue and returns 0.
Yet the code did not take into account that find_item_in_list
could return 0 and tried to dereference the returned value.
used.
The Item::save_in_field() function is called from fill_record() to fill the
new row with data while execution of the CREATE TABLE ... SELECT statement.
Item::save_in_field() calls val_xxx() methods in order to get values.
val_xxx() methods do not take into account the result field. Due to this
Item_func_set_user_var::val_xxx() methods returns values from the original
table, not from the temporary one.
The save_in_field() member function is added to the Item_func_set_user_var
class. It detects whether the result field should be used and properly updates
the value of the user variable.
sql/item_func.cc:
Bug#16861: User defined variable can have a wrong value if a tmp table was used.
Added the save_in_field() member function to the Item_func_set_user_var class.
sql/item_func.h:
Bug#16861: User defined variable can have a wrong value if a tmp table was used.
Added the save_in_field() member function to the Item_func_set_user_var class.
mysql-test/r/user_var.result:
Extended the test case for bug#18681: User defined variable can have a wrong value if
a tmp table was used.
mysql-test/t/user_var.test:
Extended the test case for bug#18681: User defined variable can have a wrong value if
a tmp table was used.
A BINARY field is represented by the Field_string class. The space character
is used as the filler for unused characters in such a field. But a BINARY field
should use \x00 instead.
Field_string:reset() now detects whether the current field is a BINARY one
and if so uses the \x00 character as a default value filler.
sql/field.h:
Bug#14171: Wrong internal default value for a BINARY field.
Field_string:reset() now detects whether the current field is a BINARY one
and if so uses the \x00 character as a default value filler.
mysql-test/r/type_binary.result:
Added a test case for the bug#14171: Wrong internal default value for a BINARY field.
mysql-test/t/type_binary.test:
Added a test case for the bug#14171: Wrong internal default value for a BINARY field.
ENUMs weren't allowed to have character 0xff, a perfectly good character in many locales.
This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
being used (because they too would get converted to 0xff on load). Now if 0xff makes an
appearance, we find a character not used in the enum and use that as a separator. If no
such character exists, we throw an error.
Any solution would have broken some sort of existing behaviour. This solution should
serve both fractions (those with 0xff and those with ',' in their enums), but
WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
That is, mysqldump with their current server, and restore when upgrading to one with
this patch.
(port of the original 4.1 patch. incorporates some suggestions by kaamos.)
mysql-test/r/type_enum.result:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
mysql-test/t/type_enum.test:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
sql/table.cc:
Bug#24660: "enum" field type definition problem
Revert fix for Bug#20922.
sql/unireg.cc:
Bug#24660: "enum" field type definition problem
Use a field-separator for ENUM-values that is not part of those values. If impossible,
throw error.
into olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25027
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/sql_lex.cc:
Auto merged
into bk-internal.mysql.com:/data0/bk/mysql-5.0-marvel
client/mysql.cc:
Auto merged
client/mysql_upgrade.c:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
client/sql_string.cc:
Auto merged
client/sql_string.h:
Auto merged
extra/my_print_defaults.c:
Auto merged
include/m_ctype.h:
Auto merged
include/my_pthread.h:
Auto merged
include/my_sys.h:
Auto merged
include/my_time.h:
Auto merged
include/mysql.h:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/mi_open.c:
Auto merged
myisam/mi_search.c:
Auto merged
myisam/mi_unique.c:
Auto merged
myisam/myisampack.c:
Auto merged
myisam/rt_index.c:
Auto merged
myisam/sort.c:
Auto merged
mysys/default.c:
Auto merged
mysys/mf_iocache2.c:
Auto merged
mysys/mf_keycache.c:
Auto merged
mysys/my_bitmap.c:
Auto merged
mysys/sha1.c:
Auto merged
ndb/include/kernel/signaldata/ArbitSignalData.hpp:
Auto merged
ndb/include/kernel/signaldata/DictTabInfo.hpp:
Auto merged
ndb/include/ndbapi/NdbReceiver.hpp:
Auto merged
ndb/include/transporter/TransporterDefinitions.hpp:
Auto merged
ndb/include/util/InputStream.hpp:
Auto merged
ndb/include/util/OutputStream.hpp:
Auto merged
ndb/include/util/SimpleProperties.hpp:
Auto merged
ndb/include/util/SocketAuthenticator.hpp:
Auto merged
ndb/include/util/SocketServer.hpp:
Auto merged
ndb/src/common/mgmcommon/ConfigRetriever.cpp:
Auto merged
ndb/src/common/portlib/NdbTick.c:
Auto merged
ndb/src/common/transporter/SHM_Transporter.cpp:
Auto merged
ndb/src/common/transporter/TCP_Transporter.cpp:
Auto merged
ndb/src/common/transporter/TCP_Transporter.hpp:
Auto merged
ndb/src/common/transporter/Transporter.cpp:
Auto merged
ndb/src/common/transporter/TransporterRegistry.cpp:
Auto merged
ndb/src/common/util/Bitmask.cpp:
Auto merged
ndb/src/common/util/ConfigValues.cpp:
Auto merged
ndb/src/common/util/File.cpp:
Auto merged
ndb/src/common/util/Properties.cpp:
Auto merged
ndb/src/common/util/SocketClient.cpp:
Auto merged
ndb/src/common/util/random.c:
Auto merged
ndb/src/common/util/socket_io.cpp:
Auto merged
ndb/src/cw/cpcd/APIService.cpp:
Auto merged
ndb/src/cw/cpcd/main.cpp:
Auto merged
ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Auto merged
ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
Auto merged
ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
Auto merged
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Auto merged
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
Auto merged
ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
Auto merged
ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
Auto merged
ndb/src/kernel/blocks/dbtux/DbtuxNode.cpp:
Auto merged
ndb/src/kernel/blocks/dbtux/DbtuxScan.cpp:
Auto merged
ndb/src/kernel/blocks/dbtux/DbtuxTree.cpp:
Auto merged
ndb/src/kernel/blocks/ndbcntr/Ndbcntr.hpp:
Auto merged
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
Auto merged
ndb/src/kernel/blocks/ndbfs/AsyncFile.hpp:
Auto merged
ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
Auto merged
ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Auto merged
ndb/src/kernel/blocks/suma/Suma.cpp:
Auto merged
ndb/src/kernel/blocks/suma/Suma.hpp:
Auto merged
ndb/src/kernel/vm/MetaData.hpp:
Auto merged
ndb/src/mgmapi/LocalConfig.cpp:
Auto merged
ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb/src/mgmclient/CommandInterpreter.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.hpp:
Auto merged
ndb/src/mgmsrv/InitConfigFileParser.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.hpp:
Auto merged
ndb/src/mgmsrv/Services.cpp:
Auto merged
ndb/src/mgmsrv/main.cpp:
Auto merged
ndb/src/ndbapi/ClusterMgr.hpp:
Auto merged
ndb/src/ndbapi/Ndb.cpp:
Auto merged
ndb/src/ndbapi/NdbBlob.cpp:
Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Auto merged
ndb/src/ndbapi/NdbIndexOperation.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationDefine.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationExec.cpp:
Auto merged
ndb/src/ndbapi/NdbOperationSearch.cpp:
Auto merged
ndb/src/ndbapi/NdbScanFilter.cpp:
Auto merged
ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
ndb/src/ndbapi/SignalSender.cpp:
Auto merged
ndb/src/ndbapi/ndb_cluster_connection.cpp:
Auto merged
ndb/tools/delete_all.cpp:
Auto merged
ndb/tools/desc.cpp:
Auto merged
ndb/tools/drop_index.cpp:
Auto merged
ndb/tools/drop_tab.cpp:
Auto merged
ndb/tools/listTables.cpp:
Auto merged
ndb/tools/ndb_config.cpp:
Auto merged
ndb/tools/restore/Restore.hpp:
Auto merged
ndb/tools/restore/consumer.hpp:
Auto merged
ndb/tools/select_all.cpp:
Auto merged
ndb/tools/select_count.cpp:
Auto merged
ndb/tools/restore/restore_main.cpp:
Auto merged
server-tools/instance-manager/commands.h:
Auto merged
server-tools/instance-manager/guardian.cc:
Auto merged
server-tools/instance-manager/instance_options.cc:
Auto merged
server-tools/instance-manager/mysql_connection.cc:
Auto merged
server-tools/instance-manager/options.cc:
Auto merged
server-tools/instance-manager/options.h:
Auto merged
server-tools/instance-manager/parse.cc:
Auto merged
server-tools/instance-manager/user_map.cc:
Auto merged
server-tools/instance-manager/user_map.h:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/filesort.cc:
Auto merged
sql/ha_archive.cc:
Auto merged
sql/ha_archive.h:
Auto merged
sql/ha_federated.cc:
Auto merged
sql/ha_heap.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_row.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/password.c:
Auto merged
sql/protocol.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/spatial.cc:
Auto merged
sql/spatial.h:
Auto merged
sql/sql_cache.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_derived.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_string.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_trigger.cc:
Auto merged
sql/sql_trigger.h:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql-common/client.c:
Auto merged
sql-common/my_time.c:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
sql/tztime.cc:
Auto merged
sql/unireg.cc:
Auto merged
strings/ctype-bin.c:
Auto merged
strings/ctype-cp932.c:
Auto merged
strings/ctype-eucjpms.c:
Auto merged
strings/ctype-mb.c:
Auto merged
strings/ctype-simple.c:
Auto merged
strings/ctype-sjis.c:
Auto merged
strings/ctype-uca.c:
Auto merged
strings/ctype-ujis.c:
Auto merged
strings/ctype-utf8.c:
Auto merged
strings/decimal.c:
Auto merged
strings/my_vsnprintf.c:
Auto merged
tests/mysql_client_test.c:
Auto merged
Unencode internal db & table name
mysql-test/r/information_schema_inno.result:
test result
mysql-test/t/information_schema_inno.test:
test case
storage/innobase/handler/ha_innodb.cc:
Unencode internal db & table name
correctly in some cases", from 5.0.
In short, calls to a stored function located in another database
than the default database, may fail to replicate if the call was made
by SET, SELECT, or DO.
sp_head.cc automerged, only the test and test's result had to be hand-merged.
mysql-test/r/rpl_sp.result:
manual merge of the result of the test for BUG#19725
mysql-test/r/rpl_switch_stm_row_mixed.result:
the bugfix changes results as expected
mysql-test/t/rpl_sp.test:
manual merge of the test for BUG#19725
correctly in some cases".
In short, calls to a stored function located in another database
than the default database, may fail to replicate if the call was made
by SET, SELECT, or DO.
Longer: when a stored function is called from a statement which does not go
to binlog ("SET @a=somedb.myfunc()", "SELECT somedb.myfunc()",
"DO somedb.myfunc()"), this crafted statement is binlogged:
"SELECT myfunc();" (accompanied with a mention of the default database
if there is one). So, if "somedb" is not the default database,
the slave would fail to find myfunc(). The fix is to specify the
function's database name in the crafted binlogged statement, like this:
"SELECT somedb.myfunc();". Test added in rpl_sp.test.
mysql-test/r/rpl_sp.result:
Because I moved the SHOW BINLOG EVENTS down a bit, big portions of its
output move. Also, the function's database name appears in
SELECT statements.
mysql-test/t/rpl_sp.test:
Adding test for BUG#19725.
Moving the SHOW BINLOG EVENTS down, it is run at the very end to
test everything.
sql/sp_head.cc:
When binlogging a "SELECT myfunc()" (when a stored function is executed
inside a statement which does not go to the binlog (like a SET,
SELECT, DO), we need to write "SELECT db_of_myfunc().myfunc()",
because the function may be in a database which is not the default
database.
into macbook.local:/Users/kgeorge/mysql/work/merge-5.1-opt
mysql-test/r/distinct.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/udf.test:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
sql/sql_udf.cc:
SCCS merged
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint-greener
Makefile.am:
Auto merged
configure.in:
Auto merged
include/mysql.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqlbug.sh:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_show.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
mysql-test/r/warnings.result:
Manual merge.
mysql-test/t/warnings.test:
Manual merge.
strings/ctype-extra.c:
Manual merge.
The optimizer removes expressions from GROUP BY/DISTINCT
if they happen to participate in a <expression> = <const>
predicates of the WHERE clause (the idea being that if
it's always equal to a constant it can't have multiple
values).
However for predicates where the expression and the
constant item are of different result type this is not
valid (e.g. a string column compared to 0).
Fixed by additional check of the result types of the
expression and the constant and if they differ the
expression don't get removed from the group by list.
mysql-test/r/distinct.result:
Bug #15881: cast problems
- test case
mysql-test/t/distinct.test:
Bug #15881: cast problems
- test case
sql/sql_select.cc:
Bug #15881: cast problems
- can't use <expr>=<const> to remove GROUP BY/DISTINCT cols
if they're not of the same type.
The function mi_get_pointer_length() computed too small
pointer size for very large tables.
Inserted missing 'else' between the branches for very
large tables.
myisam/mi_create.c:
Bug#24607 - MyISAM pointer size determined incorrectly
Inserted missing 'else' between the branches for very
large tables.
Harmonized literals "(longlong) 1" and "1L" to "ULL(1)"
where they are used for "ulonglong file_length".
mysql-test/r/myisam.result:
Bug#24607 - MyISAM pointer size determined incorrectly
Added the test result.
mysql-test/t/myisam.test:
Bug#24607 - MyISAM pointer size determined incorrectly
Added the test.
mysql-test/r/csv.result:
Fixed test case for format change. Added new test for floating point numbers.
mysql-test/t/csv.test:
Fixed test for format change. Added test case for floating point numbers.
storage/csv/ha_tina.cc:
Updated code to handle numbers as raw unquotes types in CSV
bug#25296 Truncate table converts NDB disk based tables to in-memory tables: Changed fix to use get_tablespace_name directly instead
sql/ha_ndbcluster.h:
bug#25296 Truncate table converts NDB disk based tables to in-memory tables: Changed fix to use get_tablespace_name directly instead
mysql-test/r/ndb_dd_alter.result:
bug#25296 Truncate table converts NDB disk based tables to in-memory tables: Changed fix to use get_tablespace_name directly instead
sql/ha_ndbcluster.cc:
bug#25296 Truncate table converts NDB disk based tables to in-memory tables: Changed fix to use get_tablespace_name directly instead
Updated from Tomas review
mysql-test/t/rpl_ndb_do_db.test:
Updated from Tomas review
mysql-test/t/rpl_ndb_do_table.test:
Updated from Tomas review
mysql-test/r/rpl_ndb_do_db.result:
Updated from Tomas review
mysql-test/r/rpl_ndb_do_table.result:
Updated from Tomas review
mysql-test/r/rpl_ndb_rep_ignore.result:
Updated from Tomas review
mysql-test/t/rpl_ndb_rep_ignore.test:
Updated from Tomas review
This bug appeared after the patch for bug 21390 that had added some code
to handle outer joins with no matches after substitution of a const
table in an efficient way. That code as it is cannot be applied to the case
of nested outer join operations. Being applied to the queries with
nested outer joins the code can cause crashes or wrong result sets.
The fix blocks row substitution for const inner tables of an outer join
if the inner operand is not a single table.
mysql-test/r/join_nested.result:
Added a test case for bug #24345.
mysql-test/t/join_nested.test:
Added a test case for bug #24345.
With MySQL 3.23 and 4.0, the syntax 'LIMIT N, -1' is accepted, and returns
all the rows located after row N. This behavior, however, is not the
intended result, and defeats the purpose of LIMIT, which is to constrain
the size of a result set.
With MySQL 4.1 and later, this construct is correctly detected as a syntax
error.
This fix does not change the production code, and only adds a new test case
to improve test coverage in this area, to enforce in the test suite the
intended behavior.
mysql-test/r/select.result:
Enforce that LIMIT N, -1 is illegal.
mysql-test/t/select.test:
Enforce that LIMIT N, -1 is illegal.
On loaded boxes it is possible a INSERT with sleep of 1.5s to take
more time.
mysql-test/r/events_logs_tests.result:
update result file
mysql-test/t/events_logs_tests.test:
fix test case to be proof of loaded boxes. 20 seconds is reasonable time
not to get a sleep of 1.5s to sleep for 20s
into chilla.local:/home/mydev/mysql-5.1-axmrg
sql/lock.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_locking.c:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/mi_range.c:
Auto merged
storage/myisam/mi_test1.c:
Auto merged
storage/myisam/mi_update.c:
Auto merged
storage/myisam/mi_write.c:
Auto merged
storage/myisam/myisamdef.h:
Auto merged
storage/myisam/rt_split.c:
Auto merged
into chilla.local:/home/mydev/mysql-5.0-axmrg
myisam/mi_dynrec.c:
Auto merged
myisam/mi_locking.c:
Auto merged
myisam/mi_open.c:
Auto merged
myisam/mi_update.c:
Auto merged
myisam/mi_write.c:
Auto merged
myisam/myisamdef.h:
Auto merged
sql/lock.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
into mysql.com:/d2/hf/opt/my50-opt
myisam/mi_check.c:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
mysql-test/r/ndb_dd_alter.result:
ug #25296 Truncate table converts NDB disk based tables to in-memory tables: implemented ha_ndbcluster::update_create_info
mysql-test/t/ndb_dd_alter.test:
ug #25296 Truncate table converts NDB disk based tables to in-memory tables: implemented ha_ndbcluster::update_create_info
sql/ha_ndbcluster.cc:
ug #25296 Truncate table converts NDB disk based tables to in-memory tables: implemented ha_ndbcluster::update_create_info
sql/ha_ndbcluster.h:
ug #25296 Truncate table converts NDB disk based tables to in-memory tables: implemented ha_ndbcluster::update_create_info
into weblab.(none):/home/marcsql/TREE/mysql-5.1-merge
mysql-test/r/sp.result:
Auto merged
server-tools/instance-manager/commands.cc:
Auto merged
server-tools/instance-manager/commands.h:
Auto merged
server-tools/instance-manager/guardian.cc:
Auto merged
server-tools/instance-manager/guardian.h:
Auto merged
server-tools/instance-manager/instance.cc:
Auto merged
server-tools/instance-manager/instance.h:
Auto merged
server-tools/instance-manager/instance_map.cc:
Auto merged
server-tools/instance-manager/instance_map.h:
Auto merged
server-tools/instance-manager/instance_options.h:
Auto merged
server-tools/instance-manager/listener.cc:
Auto merged
server-tools/instance-manager/manager.cc:
Auto merged
server-tools/instance-manager/manager.h:
Auto merged
server-tools/instance-manager/user_map.cc:
Auto merged
sql/event_data_objects.cc:
Auto merged
sql/event_queue.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/csv/ha_tina.cc:
Auto merged
tests/mysql_client_test.c:
Auto merged
into mysql.com:/d2/hf/common/my51-common
libmysqld/Makefile.am:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/ps.test:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_insert.cc:
Auto merged
BitKeeper/deleted/.del-ps_not_windows.test:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
5.1-related fixes
libmysqld/Makefile.am fixed to recompile and link ha_*.cc files that
keep dependance on THD structure.
Minor fixes to make tests working.
config/ac-macros/plugins.m4:
condition_dependent_plugin_objects added
libmysqld/Makefile.am:
rules for ha_*.o files added
condition_dependent_plugin_objects sent to linker
libmysqld/lib_sql.cc:
ddl_log initialization added
mysql-test/r/flush_block_commit_notembedded.result:
result fixed
mysql-test/t/crash_commit_before.test:
doesn't work in embedded server
mysql-test/t/csv.test:
replace_result added
mysql-test/t/ps.test:
doesn't work in embedded server
should be fixed by separating ps_notembedded.test
mysql-test/t/ps_1general.test:
replace_result fixed
mysql-test/t/ps_not_windows.test:
doesn't work in embedded server
mysql-test/t/trigger.test:
replace_result fixed
sql/sql_insert.cc:
#ifdef HAVE_ROW_BASED_REPLICATION added
storage/myisam/ha_myisam.cc:
MY_UNPACK_FILENAME flag added
into poseidon.mysql.com:/home/tomas/mysql-5.0-ndb
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
ndb/src/ndbapi/NdbTransaction.cpp:
Auto merged
ndb/src/ndbapi/Ndbif.cpp:
Auto merged
ndb/test/ndbapi/testBasic.cpp:
Auto merged
ndb/test/ndbapi/testIndex.cpp:
Auto merged
into poseidon.:/home/tomas/mysql-5.1-new-ndb
include/my_base.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/r/ndb_dd_ddl.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/handler.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/ndb/include/kernel/signaldata/BackupContinueB.hpp:
Auto merged
storage/ndb/src/common/util/File.cpp:
Auto merged
storage/ndb/src/common/util/InputStream.cpp:
Auto merged
storage/ndb/src/common/util/socket_io.cpp:
Auto merged
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
Auto merged
storage/ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
Auto merged
storage/ndb/src/kernel/vm/SimulatedBlock.cpp:
Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
storage/ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
storage/ndb/src/mgmsrv/Services.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Auto merged
storage/ndb/src/ndbapi/NdbTransaction.cpp:
Auto merged
storage/ndb/src/ndbapi/Ndbif.cpp:
Auto merged
storage/ndb/src/ndbapi/TransporterFacade.cpp:
Auto merged
storage/ndb/src/ndbapi/ndberror.c:
Auto merged
storage/ndb/test/ndbapi/testBasic.cpp:
Auto merged
storage/ndb/test/ndbapi/testIndex.cpp:
Auto merged
storage/ndb/test/ndbapi/testSystemRestart.cpp:
Auto merged
storage/ndb/tools/ndb_condig.cpp:
Auto merged
sql/sql_plugin.cc:
manual merge
into siva.hindu.god:/usr/home/tim/m/bk/50
Makefile.am:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqltest.c:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
include/mysql.h:
Auto merged
include/typelib.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysys/default.c:
Auto merged
mysys/my_wincond.c:
Auto merged
mysys/typelib.c:
Auto merged
server-tools/instance-manager/guardian.cc:
Auto merged
server-tools/instance-manager/instance.cc:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/share/charsets/hebrew.xml:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
strings/conf_to_src.c:
Auto merged
vio/viossl.c:
Auto merged
into siva.hindu.god:/usr/home/tim/m/bk/tmp/mrg51-dec26
Makefile.am:
Auto merged
client/mysqlbinlog.cc:
Auto merged
configure.in:
Auto merged
client/mysqltest.c:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
include/my_pthread.h:
Auto merged
include/mysql.h:
Auto merged
include/typelib.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/type_timestamp.result:
Auto merged
mysql-test/r/warnings.result:
Auto merged
mysys/default.c:
Auto merged
mysys/my_wincond.c:
Auto merged
mysys/typelib.c:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
server-tools/instance-manager/guardian.cc:
Auto merged
server-tools/instance-manager/instance.cc:
Auto merged
sql/field.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/share/charsets/hebrew.xml:
Auto merged
sql/sql_show.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
strings/conf_to_src.c:
Auto merged
vio/viossl.c:
Auto merged
sql/field.h:
Manual merge
sql/log_event.cc:
Manual merge
into xiphis.org:/home/antony/work2/mysql-5.1-engines-merge
include/mysql.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/mi_range.c:
Auto merged
storage/myisam/mi_test1.c:
Auto merged
storage/myisam/mi_write.c:
Auto merged
storage/myisam/rt_split.c:
Auto merged
configure.in:
fix merge conflict
into siva.hindu.god:/usr/home/tim/m/bk/51
BitKeeper/etc/collapsed:
auto-union
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
This is for bug #22555.
mysql-test/r/func_group.result:
Round the results of std() for some calls, because Windows' sqrt() function appears to return fewer "significant" digits than the Unix implementations.
This is for bug #22555.
mysql-test/t/func_group.test:
Round the results of std() for some calls, because Windows' sqrt() function appears to return fewer "significant" digits than the Unix implementations.
This is for bug #22555.
repair it
Multi-table delete that is optimized with QUICK_RANGE reports table
corruption.
DELETE statement must not use KEYREAD optimization, and sets
table->no_keyread to 1. This was ignored in QUICK_RANGE optimization.
With this fix QUICK_RANGE optimization honors table->no_keyread
value and does not enable KEYREAD when it is requested.
mysql-test/r/index_merge.result:
Fixed a test case according to fix for bug#25048.
mysql-test/r/index_merge_ror.result:
A test case for bug#25048.
mysql-test/t/index_merge_ror.test:
A test case for bug#25048.
sql/opt_range.cc:
Do not use key read when head->no_keyread is set.
into zippy.cornsilk.net:/home/cmiller/work/mysql/bug22555/my51-bug22555
BitKeeper/etc/collapsed:
auto-union
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_sum.cc:
Manual merge.
When only one row was present, the subtraction of nearly the same number
resulted in catastropic cancellation, introducing an error in the
VARIANCE calculation near 1e-15. That was sqrt()ed to get STDDEV, the
error was escallated to near 1e-8.
The simple fix of testing for a row count of 1 and forcing that to yield
0.0 is insufficient, as two rows of the same value should also have a
variance of 0.0, yet the error would be about the same.
So, this patch changes the formula that computes the VARIANCE to be one
that is not subject to catastrophic cancellation.
In addition, it now uses only (faster-than-decimal) floating point numbers
to calculate, and renders that to other types on demand.
mysql-test/r/func_group.result:
Test that the bug is fixed, and that no unexpected behavior arises from the
changes.
mysql-test/t/func_group.test:
Test that the bug is fixed, and that no unexpected behavior arises from the
changes.
sql/item_sum.cc:
Serg's suggestion: Force all VARIANCE calculations to be done with floating-
point types. It's faster, and the SQL standard says we may implement these
functions any way we want.
Additionally, use a form of variance calculation that is not subject to
catastrophic cancellation.
http://static.flickr.com/108/311308512_5c4e1c0c3d_b.jpg
sql/item_sum.h:
Remove unused members and add a comment describing the recurrence relation.
into radha.patg.net:/Users/patg/mysql-build/mysql-5.1-arch-merge
mysql-test/t/disabled.def:
Auto merged
sql/mysqld.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
Added definitions for the following Hebrew characters as specified by the ISO/IEC 8859-8:1999:
LEFT-TO-RIGHT MARK (LRM)
RIGHT-TO-LEFT MARK (RLM)
sql/share/charsets/hebrew.xml:
Added definitions for the following Hebrew characters as specified by the ISO/IEC 8859-8:1999:
LEFT-TO-RIGHT MARK (LRM)
RIGHT-TO-LEFT MARK (RLM)
strings/conf_to_src.c:
Added a warning comment in the generated C source file.
strings/ctype-extra.c:
Re-generated from sql/share/charsets/hebrew.xml
mysql-test/r/ctype_hebrew.result:
Added the test case for bug #24037 "Lossy Hebrew to Unicode conversion"
mysql-test/t/ctype_hebrew.test:
Added the test case for bug #24037 "Lossy Hebrew to Unicode conversion"
into siva.hindu.god:/usr/home/tim/m/bk/51
mysql-test/Makefile.am:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqld_multi.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/sql_class.h:
Auto merged
into siva.hindu.god:/usr/home/tim/m/bk/50
mysql-test/Makefile.am:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqld_multi.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/sql_class.h:
Auto merged
into romeo.(none):/home/bk/merge-b22864-myql-5.1-new-rpl
sql/log.h:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/log.cc:
Merge with mysql-5.1-new-rpl
sql/slave.cc:
Merge with mysql-5.1-new-rpl
sql/sql_insert.cc:
Merge with mysql-5.1-new-rpl
into chilla.local:/home/mydev/mysql-5.1-axmrg
configure.in:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/myisam.test:
Auto merged
from log):
When row-based logging is used, the CREATE-SELECT is written as two
parts: as a CREATE TABLE statement and as the rows for the table. For
both transactional and non-transactional tables, the CREATE TABLE
statement was written to the transaction cache, as were the rows, and
on statement end, the entire transaction cache was written to the binary
log if the table was non-transactional. For transactional tables, the
events were kept in the transaction cache until end of transaction (or
statement that were not part of a transaction).
For the case when AUTOCOMMIT=0 and we are creating a transactional table
using a create select, we would then keep the CREATE TABLE statement and
the rows for the CREATE-SELECT, while executing the following statements.
On a rollback, the transaction cache would then be cleared, which would
also remove the CREATE TABLE statement. Hence no table would be created
on the slave, while there is an empty table on the master.
This relates to BUG#22865 where the table being created exists on the
master, but not on the slave during insertion of rows into the newly
created table. This occurs since the CREATE TABLE statement were still
in the transaction cache until the statement finished executing, and
possibly longer if the table was transactional.
This patch changes the behaviour of the CREATE-SELECT statement by
adding an implicit commit at the end of the statement when creating
non-temporary tables. Hence, non-temporary tables will be written to the
binary log on completion, and in the even of AUTOCOMMIT=0, a new
transaction will be started. Temporary tables do not commit an ongoing
transaction: neither as a pre- not a post-commit.
The events for both transactional and non-transactional tables are
saved in the transaction cache, and written to the binary log at end
of the statement.
mysql-test/r/rpl_row_create_table.result:
Result change
mysql-test/t/rpl_row_create_table.test:
Requring InnoDB for slave as well.
Adding test CREATE-SELECT that is rolled back explicitly.
Changing binlog positions.
sql/log.cc:
Adding helper class to handle lock/unlock of mutexes using RAII.
Factoring out code into write_cache() function to transaction cache
to binary log.
Adding function THD::binlog_flush_transaction_cache() to flush the
transaction cache to the binary log file.
Factoring out code into binlog_set_stmt_begin() to set the beginning
of statement savepoint.
Clearing before statement point when transaction cache is truncated
so that these points are out of range.
sql/log.h:
Adding method MYSQL_BIN_LOG::write_cache()
sql/log_event.h:
Replicating OPTION_NOT_AUTOCOMMIT flag (see changeset comment)
sql/mysql_priv.h:
Although left-shifting signed integer values is well-defined,
it has potential for strange errors. Using unsigned long long
instead of signed long long since this is the type of the options
flags.
sql/slave.cc:
Adding printout of transaction-critical thread flags.
sql/sql_class.h:
Adding function THD::binlog_flush_transaction_cache()
Adding function THD::binlog_set_stmt_begin()
sql/sql_insert.cc:
Adding code to cache events for a CREATE-SELECT statement.
Disabling binlog for SBR (but not RBR) when sending error for select part
of CREATE-SELECT statement.
Adding implicit commit at end of statement for non-temporary tables.
mysql-test/t/rpl_row_create_table-slave.opt:
New BitKeeper file ``mysql-test/t/rpl_row_create_table-slave.opt''
An update that used a join of a table to itself and modified the
table on one side of the join reported the table as crashed or
updated wrong rows.
Fixed by creating temporary table for self-joined multi update statement.
mysql-test/r/myisam.result:
A test case for BUG#21310.
mysql-test/t/myisam.test:
A test case for BUG#21310.
sql/lock.cc:
Exclude 'table' param from check.
sql/sql_update.cc:
Disabling record cache for self-joined multi update statement is wrong.
The join must only see the table as it was at the beginning of the statement.
safe_update_on_fly check if it is safe to update first table on the fly, that is
not creating temporary table. It is possible in case a row from this table is
never read more than once. safe_update_on_fly now detect self-joined table and
refuse to update this table on the fly.