Item_sum_max/Item_sum_min incorrectly set null_value flag and
attempt to get result in parent functions leads to crash.
This happens due to double evaluation of the function argumet.
First evaluation happens in the comparator and second one
happens in Item_cache::cache_value().
The fix is to introduce new Item_cache object which
holds result of the argument and use this cached value
as an argument of the comparator.
mysql-test/r/func_group.result:
test case
mysql-test/t/func_group.test:
test case
sql/item.cc:
added assertion that ether we have some result or result is NULL.
sql/item_sum.cc:
introduce new Item_cache object which
holds result of the argument and use this cached value
as an argument of the comparator.
sql/item_sum.h:
introduce new Item_cache object which
holds result of the argument and use this cached value
as an argument of the comparator.
when there was one NULL value, AVG(DISTINCT) could forget about other values.
See commit comment of item_sum.cc.
mysql-test/r/func_group.result:
before the code fix, both SELECTs would return NULL
sql/item_sum.cc:
Assume we are executing "SELECT AVG([DISTINCT] some_field) FROM some_table".
and some_field is the single field of some_table for simplicity.
Each time a row is processed (evaluate_join_record()->
end_send_group()->update_sum_func()) an aggregator is notified,
which itself notifies an Item_sum_avg.
Without DISTINCT, this Item_sum_avg immediately increments its
internal "sum of values" and "count of values" (the latter being
Item_sum_avg::count). The count is incremented only if the row's value
is not NULL (in Item_sum_avg::add()), per AVG() semantices. This row's value
is available in args[0] of Item_sum_avg ("args[0]" stands for
"the first argument of the item": it's an Item_field which automatically
receives the row's value when a row is read from the table).
bool Item_sum_avg::add()
{
if (Item_sum_sum::add()) << calculates the sum (ignores NULL)
return TRUE;
if (!args[0]->null_value)<<if added value is not NULL
count++; <<increment "count"
return FALSE;
}
and everything works.
With DISTINCT, when a row is processed by evaluate_join_record(),
Item_sum_avg does no immediate computation, rather stores
the row's value in a tree (to throw the value away if it is a duplicate
of previous value, otherwise to remember all
distinct values). It's only when it's time to send the average to the
user (at end of the query:
sub_select(end_of_records=true)->end_send_group()->
select_send->send_data()->Protocol::send_result_set_row()->
Item::send()->Item_sum_avg->val_str()), that we iterate over the tree,
compute the sum and count: for this, for each element of the tree,
Item_sum_avg::add() is called and has the same two steps as before:
* Item_sum_sum::add() updates the sum (finding the tree element's value
correctly, and determining correctly its NULLness - look for "arg_is_null"
in that function)
* the "if (!args[0]->null_value)" test right after, breaks: it uses args[0],
which isn't the tree's element but rather the value for the last row
processed by evaluate_join_record(). So if that last row was NULL,
"count" stays 0 for each row, and AVG() then returns NULL (count==0 =>
NULL, per AVG() semantics).
The fix is to let the aggregator tell whether the value
it just saw was NULL. The aggregator knows where to get the info
thanks to virtual functions. Item_sum_sum::add() now asks
the aggregator. Item_sum_avg() also asks the aggregator
and then knows it shouldn't increment "count".
sql/item_sum.h:
Aggregator can now tell about value/NULLness of just-aggregated value
== MYSQL_TYPE_LONGLONG
A MIN/MAX() function with a subquery as its argument could lead
to a debug assertion on debug builds or wrong data on release
ones.
The problem was a combination of the following factors:
- Item_sum_hybrid::fix_fields() might use the argument
(args[0]) to calculate 'hybrid_field_type' which was later used
to decide how the data should be sent to the client.
- Item_sum::make_field() might use the argument again to
calculate the field's type when sending result set metadata to
the client.
- The argument could be changed in between these two calls via
Item::set_arg() leading to inconsistent metadata being
reported.
Here is what was happening for the bug's test case:
1. Item_sum_hybrid::fix_fields() calculates hybrid_field_type
as MYSQL_TYPE_LONGLONG based on args[0] which is an
Item::SUBSELECT_ITEM at that time.
2. A temporary table is created to execute the
query. create_tmp_field_from_item() creates a Field_long object
according to the subselect's max_length.
3. The subselect item in Item_sum_hybrid is replaced by the
Item_field object referencing the newly created Field_long.
4. Item_sum::make_field() rightfully returns the
MYSQL_TYPE_LONG type when calculating the result set metadata.
5. When sending the actual data, Item::send() relies on the
virtual field_type() function which in our case returns
previously calculated hybrid_field_type == MYSQL_TYPE_LONGLONG.
It looks like the only solution is to never refer to the
argument's metadata after the result metadata has been
calculated in fix_fields(), since the argument itself may be
different by then. In this sense, Item_sum::make_field() should
never be used, because it may rely on the argument's metadata
and is only called after fix_fields(). The "default"
implementation in Item::make_field() should be used instead as
it relies only on field_type(), but not on the argument's type.
Fixed by removing Item_sum::make_field() so that the superclass
implementation Item::make_field() is always used.
mysql-test/r/func_group.result:
Added a test case for bug #54465.
mysql-test/t/func_group.test:
Added a test case for bug #54465.
sql/item_sum.cc:
Removed Item_sum::make_field() so that the superclass
implementation Item::make_field() is always used.
sql/item_sum.h:
Removed Item_sum::make_field() so that the superclass
implementation Item::make_field() is always used.
The Item_cache_datetime::val_str function wasn't taking into account that time
could be negative. This led to failed assertion.
Now Item_cache_datetime::val_str correctly converts negative time values
from integer to string representation.
mysql-test/r/func_group.result:
Added a test case for the bug#56120.
mysql-test/t/func_group.test:
Added a test case for the bug#56120.
sql/item.cc:
Bug#56120: Failed assertion on MIX/MAX on negative time value
Now Item_cache_datetime::val_str correctly converts negative time values
from integer to string representation.
A typo in the Item_cache_datetime::val_str caused an assertion to fail on the
maximum time value.
mysql-test/r/func_group.result:
A test case for the bug#55648.
mysql-test/t/func_group.test:
A test case for the bug#55648.
sql/item.cc:
Bug#55648: Server crash on MIX/MAX on maximum time value
Corrected assertion.
MySQL manual describes values of the YEAR(2) field type as follows:
values 00 - 69 mean 2000 - 2069 years and values 70 - 99 mean 1970 - 1999
years. MIN/MAX and comparison functions was comparing them as int values
thus producing wrong result.
Now the Arg_comparator class is extended with compare_year function which
performs correct comparison of the YEAR type.
The Item_sum_hybrid class now uses Item_cache and Arg_comparator objects to
correctly calculate its value.
To allow Arg_comparator to use func_name() function for Item_func and Item_sum
objects the func_name declaration is moved to the Item_result_field class.
A helper function is_owner_equal_func is added to the Arg_comparator class.
It checks whether the Arg_comparator object owner is the <=> function or not.
A helper function setup is added to the Item_sum_hybrid class. It sets up
cache item and comparator.
mysql-test/r/func_group.result:
Added a test case for the bug#43668.
mysql-test/t/func_group.test:
Added a test case for the bug#43668.
sql/item.cc:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
Now Item_cache_int returns the type of cached item.
sql/item.h:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
To allow Arg_comparator to use func_name() function for Item_func and Item_sum
objects the func_name declaration is moved to the Item_result_field class.
sql/item_cmpfunc.cc:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
The Arg_comparator class is extended with compare_year function which
performs correct comparison of the YEAR type.
sql/item_cmpfunc.h:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
The year_as_datetime variable is added to the Arg_comparator class.
It's set to TRUE when YEAR value should be converted to the
YYYY-00-00 00:00:00 format for correct YEAR-DATETIME comparison.
sql/item_geofunc.cc:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
Item_func_spatial_rel::val_int chenged to use Arg_comparator's string
buffers.
sql/item_subselect.h:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
Added an implementation of the virtual func_name function.
sql/item_sum.cc:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
The Item_sum_hybrid class now uses Item_cache and Arg_comparator objects to
correctly calculate its value.
A helper function setup is added to the Item_sum_hybrid class. It sets up
cache item and comparator.
sql/item_sum.h:
Bug#43668: Wrong comparison and MIN/MAX for YEAR(2)
The Item_sum_hybrid class now uses Item_cache and Arg_comparator objects to
correctly calculate its value.
Added an implementation of the virtual func_name function.
columns without where/group
Simple SELECT with implicit grouping used to return many rows if
the query was ordered by the aggregated column in the SELECT
list. This was incorrect because queries with implicit grouping
should only return a single record.
The problem was that when JOIN:exec() decided if execution needed
to handle grouping, it was assumed that sum_func_count==0 meant
that there were no aggregate functions in the query. This
assumption was not correct in JOIN::exec() because the aggregate
functions might have been optimized away during JOIN::optimize().
The reason why queries without ordering behaved correctly was
that sum_func_count is only recalculated if the optimizer chooses
to use temporary tables (which it does in the ordered case).
Hence, non-ordered queries were correctly treated as grouped.
The fix for this bug was to remove the assumption that
sum_func_count==0 means that there is no need for grouping. This
was done by introducing variable "bool implicit_grouping" in the
JOIN object.
mysql-test/r/func_group.result:
Add test for BUG#47280
mysql-test/t/func_group.test:
Add test for BUG#47280
sql/opt_sum.cc:
Improve comment for opt_sum_query()
sql/sql_class.h:
Add comment for variables in TMP_TABLE_PARAM
sql/sql_select.cc:
Introduce and use variable implicit_grouping instead of (!group_list && sum_func_count) in places that need to test if grouping is required. Also added comments for: optimization of aggregate fields for implicitly grouped queries (JOIN::optimize) and choice of end_select method (JOIN::execute)
sql/sql_select.h:
Add variable implicit_grouping, which will be TRUE for queries that contain aggregate functions but no GROUP BY clause. Also added comment to sort_and_group variable.
ONLY_FULL_GROUP_BY
The check for non-aggregated columns in queries with aggregate function, but without
GROUP BY was treating all the parts of the query as if they are in the SELECT list.
Fixed by ignoring the non-aggregated fields in the WHERE clause.
mysql-test/r/func_group.result:
Bug #39656: test case
mysql-test/t/func_group.test:
Bug #39656: test case
sql/sql_select.cc:
Bug #39656: ignore the new non-aggregated column refs in a WHERE
by saving the state so far and then adding only the new values of the other
parts of the bitmask.
The optimizer pulls up aggregate functions which should be aggregated in
an outer select. At some point it may substitute such a function for a field
in the temporary table. The setup_copy_fields function doesn't take this
into account and may overrun the copy_field buffer.
Fixed by filtering out the fields referenced through the specialized
reference for aggregates (Item_aggregate_ref).
Added an assertion to make sure bugs that cause similar discrepancy
don't go undetected.
mysql-test/r/func_group.result:
Bug #37348: test case
mysql-test/t/func_group.test:
Bug #37348: test case
sql/item.cc:
Bug #37348: Added a way to distinguish Item_aggregate_ref from the other types of refs
sql/item.h:
Bug #37348: Added a way to distinguish Item_aggregate_ref from the other types of refs
sql/sql_select.cc:
Bug #37348:
- Don't consider copying field references
seen through Item_aggregate_ref
- check for discrepancies between the number of expected
fields that need copying and the actual fields copied.
into kaamos.(none):/data/src/opt/bug34512/my51
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item_sum.cc:
Auto merged
returns wrong results
Casting AVG() to DECIMAL led to incorrect results when the arguments
had a non-DECIMAL type, because in this case
Item_sum_avg::val_decimal() performed the division by the number of
arguments twice.
Fixed by changing Item_sum_avg::val_decimal() to not rely on
Item_sum_sum::val_decimal(), i.e. calculate sum and divide using
DECIMAL arithmetics for DECIMAL arguments, and utilize val_real() with
subsequent conversion to DECIMAL otherwise.
mysql-test/r/func_group.result:
Added a test case for bug #34512.
mysql-test/t/func_group.test:
Added a test case for bug #34512.
sql/item_sum.cc:
Do not use Item_sum_sum::val_decimal() in Item_sum_avg::val_decimal()
because the first one, depending on the arguments type, may return
either the sum of the arguments, or the average calculated by the
virtual val_real() method of Item_sum_avg. Instead, do our own
calculation based on the arguments type.
into macbook.gmz:/Users/kgeorge/mysql/work/B33133-5.1-opt
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/sql_base.cc:
Auto merged
When resolving references we need to take into consideration
the view "fields" and allow qualified access to them.
Fixed by extending the reference resolution to process view
fields correctly.
mysql-test/r/func_group.result:
Bug #33133: test case
mysql-test/t/func_group.test:
Bug #33133: test case
sql/sql_base.cc:
Bug #33133: allow qualified alias refs to view fields
into magare.gmz:/home/kgeorge/mysql/work/B31794-5.1-opt
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/sql_select.cc:
Auto merged
The HAVING clause is subject to the same rules as the SELECT list
about using aggregated and non-aggregated columns.
But this was not enforced when processing implicit grouping from
using aggregate functions.
Fixed by performing the same checks for HAVING as for SELECT.
mysql-test/r/func_group.result:
Bug #31794: test case
mysql-test/t/func_group.test:
Bug #31794: test case
sql/sql_select.cc:
Bug #31794: Check HAVING in addition to SELECT list
into magare.gmz:/home/kgeorge/mysql/work/B30715-merged-5.1-opt
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/type_decimal.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/type_decimal.test:
Auto merged
sql/item.cc:
Auto merged
sql/opt_sum.cc:
merge bug 30715 to 5.1-opt
file .\opt_sum.cc, line
The optimizer pre-calculates the MIN/MAX values for queries like
SELECT MIN(kp_k) WHERE kp_1 = const AND ... AND kp_k-1 = const
when there is a key over kp_1...kp_k
In doing so it was not checking correctly nullability and
there was a superfluous assert().
Fixed by making sure that the field can be null before checking and
taking out the wrong assert().
.
Introduced a correct check for nullability
The MIN(field) can return NULL when all the row values in the group
are NULL-able or if there were no rows.
Fixed the assertion to reflect the case when there are no rows.
mysql-test/r/func_group.result:
Bug #30715: test case
mysql-test/t/func_group.test:
Bug #30715: test case
sql/opt_sum.cc:
Bug #30715: correct nullability check for MIN/MAX pre-calculation over index.
into magare.gmz:/home/kgeorge/mysql/work/B31156-5.1-opt
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
Item_sum_distinct::setup(THD*): Assertion
There was an assertion to detect a bug in ROLLUP
implementation. However the assertion is not true
when used in a subquery context with non-cacheable
statements.
Fixed by turning the assertion to accepted case
(just like it's done for the other aggregate functions).
mysql-test/r/func_group.result:
Bug #31156: test case
mysql-test/t/func_group.test:
Bug #31156: test case
sql/item_sum.cc:
Bug #31156: make it OK to call setup() several times:
done for (e.g.) scalar subquery
into mysql.com:/d2/hf/mrg/mysql-5.1-opt
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/include/mix1.inc:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/ps.result:
merging
mysql-test/r/subselect.result:
merging
mysql-test/r/type_datetime.result:
SCCS merged
mysql-test/t/ps.test:
merging
mysql-test/t/subselect.test:
merging
mysql-test/t/type_datetime.test:
merging
sql/opt_sum.cc:
SCCS merged
into linux-st28.site:/home/martin/mysql/src/5.0o-bug27573
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
bug#27573: hand merged test case
to NULL
For queries of the form SELECT MIN(key_part_k) FROM t1
WHERE key_part_1 = const and ... and key_part_k-1 = const,
the opt_sum_query optimization tries to
use an index to substitute MIN/MAX functions with their values according
to the following rules:
1) Insert the minimum non-null values where the WHERE clause still matches, or
3) A row of nulls
However, the correct semantics requires that there is a third case 2)
such that a NULL value is substituted if there are only NULL values for
key_part_k.
The patch modifies opt_sum_query() to handle this missing case.
mysql-test/r/func_group.result:
Bug #27573: Correct result
mysql-test/t/func_group.test:
Bug #27573: test case
sql/opt_sum.cc:
Bug #27573:
Added code that will try to read the
first non-null value for a given complete-field prefix, second
choice is to read the null, and lastly set the error code if no row
is found.
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/51
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
sql/item.h:
Auto merged
sql/item_sum.cc:
Auto merged
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.
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.
We use val_int() calls (followed by null_value check) to determine
nullness in some Item_sum_count' and Item_sum_count_distinct' methods,
as a side effect we get extra warnings raised in the val_int().
Fix: use is_null() instead.
mysql-test/r/func_group.result:
Fix for bug #21976: Unnecessary warning with count(decimal)
- test result.
mysql-test/t/func_group.test:
Fix for bug #21976: Unnecessary warning with count(decimal)
- test case.
sql/item.h:
Fix for bug #21976: Unnecessary warning with count(decimal)
- comment adjusted.
sql/item_sum.cc:
Fix for bug #21976: Unnecessary warning with count(decimal)
- use is_null() to determine nullness.
into dl145s.mysql.com:/data0/bk/team_tree_merge/MERGE/mysql-5.1-opt
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/func_group.test:
Auto merged
into mysql.com:/home/hf/work/mysql-5.1.clean
include/my_time.h:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/order_by.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/type_datetime.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
mysql-test/t/type_datetime.test:
Auto merged
mysql-test/t/udf.test:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/filesort.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_func.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/my_decimal.cc:
Auto merged
sql/my_decimal.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/records.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql-common/my_time.c:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/type_newdecimal.result:
SCCS merged
mysql-test/t/type_newdecimal.test:
merging
sql/item.cc:
merging
sql/item_subselect.cc:
SCCS merged
sql/item_timefunc.h:
merging
sql/sql_lex.cc:
SCCS merged
sql/sql_select.h:
merging
Item::val_xxx() may be called by the server several times at execute time
for a single query. Calls to val_xxx() may be very expensive and sometimes
(count(distinct), sum(distinct), avg(distinct)) not possible.
To avoid that problem the results of calculation for these aggregate
functions are cached so that val_xxx() methods just return the calculated
value for the second and subsequent calls.
mysql-test/r/func_group.result:
Bug #23184: SELECT causes server crash
- test case
mysql-test/t/func_group.test:
Bug #23184: SELECT causes server crash
- test case
sql/item_sum.cc:
Bug #23184: SELECT causes server crash
- caching of the aggregate function results so no need to recalculate at val_xxx()
sql/item_sum.h:
Bug #23184: SELECT causes server crash
- caching of the aggregate function results so no need to recalculate at val_xxx()
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/heap_hash.result:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/join_outer.result:
Auto merged
mysql-test/r/olap.result:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/range.result:
Auto merged
mysql-test/r/row.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/type_date.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sql_delete.cc:
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_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/t/sp.test:
SCCS merged
sql/item_cmpfunc.cc:
SCCS merged
sql/sql_select.cc:
SCCS merged
into macbook.gmz:/Users/kgeorge/mysql/work/B16792-5.0-opt
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
sql/opt_sum.cc:
Auto merged
mysql-test/r/func_group.result:
merge 4.1->5.0 for bug #16792
mysql-test/t/func_group.test:
merge 4.1->5.0 for bug #16792
sql/sql_select.cc:
merge 4.1->5.0 for bug #16792
into bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
BitKeeper/etc/ignore:
auto-union
BitKeeper/deleted/.del-im_options_set.result~59278f56be61d921:
Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
Auto merged
BitKeeper/deleted/.del-mysys.dsp~32695fee91189326:
Auto merged
BitKeeper/deleted/.del-im_options_set.imtest~b53d9d60e5684833:
Auto merged
BitKeeper/deleted/.del-im_options_unset.imtest~768eb186b51d0048:
Auto merged
BitKeeper/deleted/.del-im_options_unset.result~20a4790cd3c70a4f:
Auto merged
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqlcheck.c:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
dbug/dbug.c:
Auto merged
extra/perror.c:
Auto merged
extra/yassl/src/yassl_imp.cpp:
Auto merged
extra/yassl/src/yassl_int.cpp:
Auto merged
include/mysql.h:
Auto merged
include/mysql_com.h:
Auto merged
libmysql/libmysql.c:
Auto merged
mysql-test/r/cast.result:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/r/federated.result:
Auto merged
mysql-test/r/func_compress.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/gis.result:
Auto merged
mysql-test/r/im_daemon_life_cycle.result:
Auto merged
mysql-test/r/im_utils.result:
Auto merged
mysql-test/r/join_outer.result:
Auto merged
mysql-test/r/mysqlcheck.result:
Auto merged
mysql-test/r/rpl_sp.result:
Auto merged
mysql-test/r/rpl_trigger.result:
Auto merged
mysql-test/r/sp-code.result:
Auto merged
mysql-test/r/sp-security.result:
Auto merged
mysql-test/r/strict.result:
Auto merged
mysql-test/r/type_blob.result:
Auto merged
mysql-test/r/type_datetime.result:
Auto merged
mysql-test/r/type_ranges.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/cast.test:
Auto merged
mysql-test/t/disabled.def:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
Auto merged
mysql-test/t/im_life_cycle.imtest:
Auto merged
mysql-test/t/im_utils.imtest:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
mysql-test/t/mysqlcheck.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/rpl_trigger.test:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
mysql-test/t/strict.test:
Auto merged
mysql-test/t/udf.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
sql-common/client.c:
Auto merged
sql-common/my_time.c:
Auto merged
sql/table.h:
Auto merged
storage/ndb/src/kernel/error/ndbd_exit_codes.c:
Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
mysql-test/r/im_life_cycle.result:
e
use local
mysql-test/r/ps.result:
use local
client/Makefile.am:
Manual merge.
client/mysqlimport.c:
Manual merge.
configure.in:
Manual merge.
mysql-test/mysql-test-run.pl:
Manual merge.
mysql-test/r/mysqldump.result:
Manual merge.
mysql-test/r/mysqltest.result:
Manual merge.
mysql-test/r/ndb_basic.result:
Manual merge.
mysql-test/r/rpl_view.result:
Manual merge.
mysql-test/r/show_check.result:
Manual merge.
mysql-test/r/sp-error.result:
Manual merge.
mysql-test/r/sp.result:
Manual merge.
mysql-test/r/union.result:
Manual merge.
mysql-test/t/mysqldump.test:
Manual merge.
mysql-test/t/mysqltest.test:
Manual merge.
mysql-test/t/ndb_basic.test:
Manual merge.
mysql-test/t/rpl_sp.test:
Manual merge.
mysql-test/t/rpl_view.test:
Manual merge.
mysql-test/t/show_check.test:
Manual merge.
mysql-test/t/sp-error.test:
Manual merge.
mysql-test/t/sp.test:
Manual merge.
sql/item_sum.cc:
Manual merge.
sql/mysql_priv.h:
Manual merge.
sql/sp_head.cc:
Manual merge.
sql/sql_db.cc:
Manual merge.
sql/sql_delete.cc:
Manual merge.
sql/sql_lex.h:
Manual merge.
sql/sql_show.cc:
Manual merge.
sql/sql_table.cc:
Manual merge.
sql/sql_trigger.cc:
Manual merge.
sql/sql_yacc.yy:
Manual merge.
tests/mysql_client_test.c:
Manual merge.
Treat queries with no FROM and aggregate functions as normal queries,
so the aggregate function get correctly calculated as if there is 1 row.
This means that they will be considered to have one row, so COUNT(*) will return
1 instead of 0. Other aggregates will behave in compatible manner.
mysql-test/r/func_gconcat.result:
Bug #16792 query with subselect, join, and group not returning proper values
- test case. Note how it improves the support for DUAL.
mysql-test/r/func_group.result:
Bug #16792 query with subselect, join, and group not returning proper values
- test case. Note how it improves the support for DUAL.
mysql-test/r/subselect.result:
Bug #16792 query with subselect, join, and group not returning proper values
- consequence of (SELECT MAX(<const>)) now returning <const> instead of 0
mysql-test/t/func_group.test:
Bug #16792 query with subselect, join, and group not returning proper values
- test case.
sql/opt_sum.cc:
Bug #16792 query with subselect, join, and group not returning proper values
- cannot do the optimization if the index is already opened by (say) UPDATE
as it invloves opening reading and closing the index.
sql/sql_select.cc:
Bug #16792 query with subselect, join, and group not returning proper values
- Treat queries with no FROM and aggregate functions as normal queries,
so the aggregate function get correctly calculated as if there is 1 row.
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
client/mysql.cc:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/t/union.test:
Auto merged
sql/field.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/func_group.result:
Merge manually
mysql-test/t/func_group.test:
Merge manually
into sunlight.local:/local_work/tmp_merge-5.1-opt-mysql
client/mysql.cc:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/group_min_max.result:
Auto merged
BitKeeper/deleted/.del-make_win_src_distribution.sh~f80d8fca44e4e5f1:
Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
Auto merged
BitKeeper/deleted/.del-mysqld_ia64.dsp~7f8cf84d81ee04e2:
Auto merged
BitKeeper/deleted/.del-mysqldump.dsp~a8bd23547d3fc27e:
Auto merged
BitKeeper/deleted/.del-mysqldump_ia64.dsp~a2aabe898be35b31:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/ps_7ndb.result:
Auto merged
mysql-test/r/type_ranges.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/group_min_max.test:
Auto merged
mysql-test/t/innodb.test:
Auto merged
mysql-test/t/innodb_mysql.test:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/select.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/field.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_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/opt_range.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/time.cc:
Auto merged
storage/ndb/test/ndbapi/Makefile.am:
Auto merged
strings/decimal.c:
Auto merged
mysql-test/r/analyse.result:
Manual merge
mysql-test/r/bigint.result:
Manual merge
mysql-test/r/create.result:
Manual merge
mysql-test/r/information_schema.result:
Manual merge
mysql-test/r/ps_2myisam.result:
Manual merge
mysql-test/r/ps_3innodb.result:
Manual merge
mysql-test/r/ps_4heap.result:
Manual merge
mysql-test/r/ps_5merge.result:
Manual merge
mysql-test/r/ps_6bdb.result:
Manual merge
mysql-test/r/rpl_insert_id.result:
Manual merge
mysql-test/r/select.result:
Manual merge
mysql-test/r/sp.result:
Manual merge
mysql-test/r/subselect.result:
Manual merge
mysql-test/t/information_schema.test:
Manual merge
mysql-test/t/rpl_insert_id.test:
Manual merge
sql/field.h:
Manual merge
sql/item.cc:
Manual merge
sql/item.h:
Manual merge
sql/item_strfunc.h:
Manual merge
sql/item_sum.cc:
Manual merge
sql/mysql_priv.h:
Manual merge
sql/share/errmsg.txt:
Manual merge
sql/sql_class.h:
Manual merge
sql/sql_select.cc:
Manual merge
into mysql.com:/usr/home/ram/work/5.0.b10966
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
An aggregate function reference was resolved incorrectly and
caused a crash in count_field_types.
Must use real_item() to get to the real Item instance through
the reference
mysql-test/r/func_group.result:
Bug #20868: Client connection is broken on SQL query error
* test case for the bug
mysql-test/t/func_group.test:
Bug #20868: Client connection is broken on SQL query error
* test case for the bug
sql/sql_select.cc:
Bug #20868: Client connection is broken on SQL query error
* correctly resolve aggregate function references.
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/create_not_windows.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/innodb_mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/wait_timeout.test:
Auto merged
mysys/my_lib.c:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/unireg.cc:
Auto merged
mysql-test/extra/rpl_tests/rpl_log.test:
manuakl merge
mysql-test/lib/mtr_process.pl:
manuakl merge
mysql-test/mysql-test-run.pl:
manuakl merge
mysql-test/r/type_newdecimal.result:
manuakl merge
mysql-test/t/create.test:
manuakl merge
mysql-test/t/func_group.test:
manuakl merge
mysql-test/t/type_newdecimal.test:
manuakl merge
into rurik.mysql.com:/home/igor/mysql-5.0-opt
mysql-test/t/func_group.test:
Auto merged
sql/field.cc:
Auto merged
sql/opt_sum.cc:
Auto merged
mysql-test/r/func_group.result:
SCCS merged
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
client/mysqltest.c:
Auto merged
config/ac-macros/ssl.m4:
Auto merged
include/config-win.h:
Auto merged
include/my_base.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/group_min_max.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/rpl_insert_id_pk.result:
Auto merged
mysql-test/r/rpl_ndb_multi_update3.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/join_outer.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/r/rpl_ndb_sp006.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysys/my_clock.c:
Auto merged
mysys/my_copy.c:
Auto merged
mysys/my_create.c:
Auto merged
mysys/my_dup.c:
Auto merged
mysys/my_lib.c:
Auto merged
mysys/my_open.c:
Auto merged
mysys/my_redel.c:
Auto merged
mysql-test/r/create.result:
Manual merge
mysql-test/r/innodb_mysql.result:
Manual merge
mysql-test/r/join_outer.result:
Manual merge
mysql-test/t/func_group.test:
Manual merge
mysql-test/t/group_min_max.test:
Manual merge
mysql-test/t/innodb_mysql.test:
Manual merge
into rurik.mysql.com:/home/igor/mysql-5.0-opt
sql/opt_sum.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
mysql-test/r/func_group.result:
SCCS merged
mysql-test/t/func_group.test:
SCCS merged
The bug report revealed two problems related to min/max optimization:
1. If the length of a constant key used in a SARGable condition for
for the MIN/MAX fields is greater than the length of the field an
unwanted warning on key truncation is issued;
2. If MIN/MAX optimization is applied to a partial index, like INDEX(b(4))
than can lead to returning a wrong result set.
mysql-test/r/func_group.result:
Added test cases for bug #18206.
mysql-test/t/func_group.test:
Added test cases for bug #18206.
sql/opt_sum.cc:
Fixed bug #18206.
Suppressed the warning about data truncation when store_val_in_field
was used to store keys for the field used in MIN/MAX optimization.
Blocked MIN/MAX optimization for partial keys, such as in INDEX(b(4)).
sql/sql_select.cc:
Fixed bug #18206.
Added a parameter for the function store_val_in_field allowing to
control setting warnings about data truncation in the function.
sql/sql_select.h:
Fixed bug #18206.
Added a parameter for the function store_val_in_field allowing to
control setting warnings about data truncation in the function.
Moved the InnoDB related test from func_group.test to innodb_mysql.test
mysql-test/r/func_group.result:
Moved a test to innodb_mysql
mysql-test/r/innodb_mysql.result:
moved a test to innodb_mysql
mysql-test/t/func_group.test:
Moved a test to innodb_mysql
mysql-test/t/innodb_mysql.test:
Moved a test to innodb_mysql
mysql-test/r/func_group_innodb.result:
New BitKeeper file ``mysql-test/r/func_group_innodb.result''
mysql-test/t/func_group_innodb.test:
New BitKeeper file ``mysql-test/t/func_group_innodb.test''
mysql-test/t/func_group.test:
Test uses innodb, add test to check if innodb is available
mysql-test/t/group_min_max.test:
Test uses innodb, add test to check if innodb is available
mysql-test/t/join_outer.test:
Test uses innodb, add test to check if innodb is available
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
client/mysqltest.c:
Auto merged
myisam/myisamchk.c:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/loaddata.test:
Auto merged
mysql-test/t/type_decimal.test:
Auto merged
mysql-test/t/union.test:
Auto merged
sql/item_sum.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
mysql-test/r/func_group.result:
Manual merge
mysql-test/r/loaddata.result:
Manual merge
mysql-test/r/type_decimal.result:
Manual merge
mysql-test/r/union.result:
Manual merge
sql/field_conv.cc:
aborting fix for 7589
sql/opt_sum.cc:
Manual merge
sql/sql_load.cc:
Manual merge
sql/sql_yacc.yy:
Aborting fix for 11553
The problem was in that the MIN/MAX optimization in opt_sum_query was
replacing MIN/MAX functions with their constant argument without
taking into account that a query has no result rows.
mysql-test/r/func_group.result:
Test for BUG#12882.
mysql-test/t/func_group.test:
Test for BUG#12882.
sql/item_sum.cc:
If it is known that a query has no result rows, do not call add()
via the call to Item_sum::no_rows_in_result() which calls reset().
Instead directly call clear() so that the MIN and MAX functions
produce NULL when there are no result rows.
sql/opt_sum.cc:
* Do not apply MIN/MAX optimization when the operand of MIN/MAX is
a constant if it can't be determined whether the query has any
result rows. The reason is that if the query has result rows,
then the result of MIN/MAX is its constant argument, but if the
query result is empty, then the result of MIN/MAX must be NULL
irrespective of its argument.
* The patch also simplifies a bit the branch that hadles COUNT().
into mysql.com:/home/my/mysql-5.0
BitKeeper/etc/ignore:
auto-union
BitKeeper/deleted/.del-ctype_cp932.test:
Auto merged
BitKeeper/deleted/.del-isam.test~834fb0ee8196c445:
Auto merged
include/thr_lock.h:
Auto merged
mysql-test/t/alias.test:
Auto merged
mysql-test/t/alter_table.test:
Auto merged
mysql-test/t/archive.test:
Auto merged
mysql-test/t/backup.test:
Auto merged
mysql-test/t/bool.test:
Auto merged
mysql-test/t/connect.test:
Auto merged
mysql-test/t/count_distinct2.test:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/ctype_many.test:
Auto merged
mysql-test/t/ctype_ucs_binlog.test:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
mysql-test/t/delayed.test:
Auto merged
mysql-test/t/derived.test:
Auto merged
mysql-test/t/distinct.test:
Auto merged
mysql-test/t/drop.test:
Auto merged
mysql-test/t/endspace.test:
Auto merged
mysql-test/t/flush.test:
Auto merged
mysql-test/t/fulltext.test:
Auto merged
mysql-test/t/fulltext_order_by.test:
Auto merged
mysql-test/t/func_compress.test:
Auto merged
mysql-test/t/func_concat.test:
Auto merged
mysql-test/t/func_date_add.test:
Auto merged
mysql-test/t/func_equal.test:
Auto merged
mysql-test/t/func_if.test:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
mysql-test/t/func_set.test:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
mysql-test/t/gis.test:
Auto merged
mysql-test/t/grant.test:
Auto merged
mysql-test/t/grant2.test:
Auto merged
mysql-test/t/grant_cache.test:
Auto merged
mysql-test/t/heap.test:
Auto merged
mysql-test/t/heap_btree.test:
Auto merged
mysql-test/t/heap_hash.test:
Auto merged
mysql-test/t/init_connect.test:
Auto merged
mysql-test/t/insert_select.test:
Auto merged
mysql-test/t/insert_update.test:
Auto merged
mysql-test/t/key.test:
Auto merged
mysql-test/t/keywords.test:
Auto merged
mysql-test/t/limit.test:
Auto merged
mysql-test/t/lock.test:
Auto merged
mysql-test/t/lowercase_table.test:
Auto merged
mysql-test/t/lowercase_table3.test:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/mysqlbinlog2.test:
Auto merged
mysql-test/t/ndb_alter_table.test:
Auto merged
mysql-test/t/ndb_autodiscover.test:
Auto merged
mysql-test/t/ndb_charset.test:
Auto merged
mysql-test/t/ndb_grant.later:
Auto merged
mysql-test/t/ndb_index_ordered.test:
Auto merged
mysql-test/t/ndb_index_unique.test:
Auto merged
mysql-test/t/ndb_restore.test:
Auto merged
mysql-test/t/ndb_types.test:
Auto merged
mysql-test/t/ndb_update.test:
Auto merged
mysql-test/t/null.test:
Auto merged
mysql-test/t/null_key.test:
Auto merged
mysql-test/t/olap.test:
Auto merged
mysql-test/t/openssl_1.test:
Auto merged
mysql-test/t/order_by.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/ps_4heap.test:
Auto merged
mysql-test/t/ps_5merge.test:
Auto merged
mysql-test/t/query_cache.test:
Auto merged
mysql-test/t/replace.test:
Auto merged
mysql-test/t/row.test:
Auto merged
mysql-test/t/rpl000001.test:
Auto merged
mysql-test/t/rpl000015.test:
Auto merged
mysql-test/t/rpl000017.test:
Auto merged
mysql-test/t/rpl000018.test:
Auto merged
mysql-test/t/rpl_EE_error.test:
Auto merged
mysql-test/t/rpl_change_master.test:
Auto merged
mysql-test/t/rpl_charset.test:
Auto merged
mysql-test/t/rpl_create_database.test:
Auto merged
mysql-test/t/rpl_ddl.test:
Auto merged
mysql-test/t/rpl_deadlock.test:
Auto merged
mysql-test/t/rpl_empty_master_crash.test:
Auto merged
mysql-test/t/rpl_error_ignored_table.test:
Auto merged
mysql-test/t/rpl_flush_log_loop.test:
Auto merged
mysql-test/t/rpl_flush_tables.test:
Auto merged
mysql-test/t/rpl_get_lock.test:
Auto merged
mysql-test/t/rpl_heap.test:
Auto merged
mysql-test/t/rpl_loaddata.test:
Auto merged
mysql-test/t/rpl_loaddata_rule_m.test:
Auto merged
mysql-test/t/rpl_log.test:
Auto merged
mysql-test/t/rpl_log_pos.test:
Auto merged
mysql-test/t/rpl_max_relay_size.test:
Auto merged
mysql-test/t/rpl_multi_query.test:
Auto merged
mysql-test/t/rpl_openssl.test:
Auto merged
mysql-test/t/rpl_redirect.test:
Auto merged
mysql-test/t/rpl_relayrotate.test:
Auto merged
mysql-test/t/rpl_replicate_do.test:
Auto merged
mysql-test/t/rpl_reset_slave.test:
Auto merged
mysql-test/t/rpl_server_id2.test:
Auto merged
mysql-test/t/rpl_temporary.test:
Auto merged
mysql-test/t/rpl_timezone.test:
Auto merged
mysql-test/t/rpl_user_variables.test:
Auto merged
mysql-test/t/show_check.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/t/synchronization.test:
Auto merged
mysql-test/t/system_mysql_db.test:
Auto merged
mysql-test/t/system_mysql_db_fix.test:
Auto merged
mysql-test/t/temp_table.test:
Auto merged
mysql-test/t/timezone2.test:
Auto merged
mysql-test/t/timezone_grant.test:
Auto merged
mysql-test/t/type_float.test:
Auto merged
mysql-test/t/type_ranges.test:
Auto merged
mysql-test/t/type_timestamp.test:
Auto merged
mysql-test/t/union.test:
Auto merged
mysql-test/t/update.test:
Auto merged
mysql-test/t/user_var-binlog.test:
Auto merged
mysql-test/t/warnings.test:
Auto merged
mysys/thr_lock.c:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
support-files/mysql.spec.sh:
Auto merged
BitKeeper/deleted/.del-rpl_trunc_binlog.test~961b1f6ac73d37c8:
Simple merge
mysql-test/r/ps_grant.result:
Simple merge
mysql-test/t/analyse.test:
Simple merge
mysql-test/t/auto_increment.test:
Simple merge
mysql-test/t/bdb.test:
Simple merge
mysql-test/t/bigint.test:
Simple merge
mysql-test/t/case.test:
Simple merge
mysql-test/t/cast.test:
Simple merge
mysql-test/t/check.test:
Simple merge
mysql-test/t/count_distinct.test:
Simple merge
mysql-test/t/ctype_latin1_de.test:
Simple merge
mysql-test/t/ctype_uca.test:
Simple merge
mysql-test/t/ctype_ucs.test:
Simple merge
mysql-test/t/ctype_utf8.test:
Simple merge
mysql-test/t/delete.test:
Simple merge
mysql-test/t/flush_block_commit.test:
Simple merge
mysql-test/t/func_default.test:
Simple merge
mysql-test/t/func_gconcat.test:
Simple merge
mysql-test/t/func_group.test:
Aligned code with 4.1
mysql-test/t/func_in.test:
Simple merge
mysql-test/t/func_math.test:
Simple merge
mysql-test/t/func_misc.test:
Simple merge
mysql-test/t/func_test.test:
Simple merge
mysql-test/t/func_time.test:
Simple merge
mysql-test/t/group_by.test:
Simple merge
mysql-test/t/having.test:
Simple merge
mysql-test/t/innodb.test:
Simple merge
mysql-test/t/insert.test:
Simple merge
mysql-test/t/join_outer.test:
Simple merge
mysql-test/t/kill.test:
Simple merge
mysql-test/t/loaddata.test:
Simple merge
mysql-test/t/lock_multi.test:
Simple merge
mysql-test/t/multi_update.test:
Simple merge
mysql-test/t/mysqlbinlog.test:
Simple merge
mysql-test/t/mysqldump.test:
Aligned code with 4.1
mysql-test/t/mysqltest.test:
Simple merge
mysql-test/t/ndb_basic.test:
Simple merge
mysql-test/t/ndb_cache.test:
Simple merge
mysql-test/t/ndb_subquery.test:
Simple merge
mysql-test/t/ps_grant.test:
Simple merge
mysql-test/t/range.test:
Simple merge
mysql-test/t/rpl_drop_temp.test:
Simple merge
mysql-test/t/rpl_loaddata_rule_s.test:
Simple merge
mysql-test/t/rpl_loaddatalocal.test:
Simple merge
mysql-test/t/rpl_rotate_logs.test:
Simple merge
mysql-test/t/rpl_until.test:
Simple merge
mysql-test/t/rpl_variables.test:
Simple merge
mysql-test/t/select.test:
Simple merge
mysql-test/t/sql_mode.test:
Simple merge
mysql-test/t/type_blob.test:
Simple merge
mysql-test/t/type_decimal.test:
Simple merge
mysql-test/t/user_var.test:
Simple merge
mysql-test/t/variables.test:
Simple merge
sql/lock.cc:
Simple optimization
sql/mysql_priv.h:
Simple merge
sql/sql_table.cc:
Simple merge
sql/table.cc:
Simple merge
sql/unireg.cc:
Simple merge
mysql-test/t/alias.test:
Added end marker for test to make future merges easier
mysql-test/t/alter_table.test:
Added end marker for test to make future merges easier
mysql-test/t/analyse.test:
Added end marker for test to make future merges easier
mysql-test/t/analyze.test:
Added end marker for test to make future merges easier
Fixed length of comment lines
mysql-test/t/ansi.test:
Added end marker for test to make future merges easier
mysql-test/t/archive.test:
Added end marker for test to make future merges easier
mysql-test/t/auto_increment.test:
Added end marker for test to make future merges easier
mysql-test/t/backup.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb-alter-table-1.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb-alter-table-2.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb-crash.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb-deadlock.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb-deadlock.tminus:
Added end marker for test to make future merges easier
mysql-test/t/bdb.test:
Added end marker for test to make future merges easier
mysql-test/t/bdb_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/bench_count_distinct.test:
Added end marker for test to make future merges easier
mysql-test/t/bigint.test:
Added end marker for test to make future merges easier
mysql-test/t/binary.test:
Added end marker for test to make future merges easier
mysql-test/t/blackhole.test:
Added end marker for test to make future merges easier
mysql-test/t/bool.test:
Added end marker for test to make future merges easier
mysql-test/t/bulk_replace.test:
Added end marker for test to make future merges easier
mysql-test/t/case.test:
Added end marker for test to make future merges easier
mysql-test/t/cast.test:
Added end marker for test to make future merges easier
mysql-test/t/check.test:
Added end marker for test to make future merges easier
mysql-test/t/comments.test:
Added end marker for test to make future merges easier
mysql-test/t/compare.test:
Added end marker for test to make future merges easier
mysql-test/t/connect.test:
Added end marker for test to make future merges easier
mysql-test/t/consistent_snapshot.test:
Added end marker for test to make future merges easier
mysql-test/t/constraints.test:
Added end marker for test to make future merges easier
mysql-test/t/count_distinct.test:
Added end marker for test to make future merges easier
mysql-test/t/count_distinct2.test:
Added end marker for test to make future merges easier
mysql-test/t/count_distinct3.test:
Added end marker for test to make future merges easier
mysql-test/t/create.test:
Added end marker for test to make future merges easier
mysql-test/t/create_select_tmp.test:
Added end marker for test to make future merges easier
mysql-test/t/csv.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_big5.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_collate.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_cp1250_ch.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_cp1251.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_cp932.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_create.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_gbk.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_latin1.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_latin1_de.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_latin2.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_many.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_mb.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_recoding.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_sjis.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_tis620.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_uca.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_ucs.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_ucs_binlog.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_ujis.test:
Added end marker for test to make future merges easier
mysql-test/t/ctype_utf8.test:
Added end marker for test to make future merges easier
mysql-test/t/date_formats.test:
Added end marker for test to make future merges easier
mysql-test/t/delayed.test:
Added end marker for test to make future merges easier
mysql-test/t/delete.test:
Added end marker for test to make future merges easier
mysql-test/t/derived.test:
Added end marker for test to make future merges easier
mysql-test/t/dirty_close.test:
Added end marker for test to make future merges easier
mysql-test/t/distinct.test:
Added end marker for test to make future merges easier
mysql-test/t/drop.test:
Added end marker for test to make future merges easier
mysql-test/t/drop_temp_table.test:
Added end marker for test to make future merges easier
mysql-test/t/empty_table.test:
Added end marker for test to make future merges easier
mysql-test/t/endspace.test:
Added end marker for test to make future merges easier
mysql-test/t/errors.test:
Added end marker for test to make future merges easier
mysql-test/t/exampledb.test:
Added end marker for test to make future merges easier
mysql-test/t/explain.test:
Added end marker for test to make future merges easier
mysql-test/t/flush.test:
Added end marker for test to make future merges easier
mysql-test/t/flush_block_commit.test:
Added end marker for test to make future merges easier
mysql-test/t/flush_table.test:
Added end marker for test to make future merges easier
mysql-test/t/foreign_key.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext2.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_distinct.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_left_join.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_multi.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_order_by.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_update.test:
Added end marker for test to make future merges easier
mysql-test/t/fulltext_var.test:
Added end marker for test to make future merges easier
mysql-test/t/func_compress.test:
Added end marker for test to make future merges easier
mysql-test/t/func_concat.test:
Added end marker for test to make future merges easier
mysql-test/t/func_crypt.test:
Added end marker for test to make future merges easier
mysql-test/t/func_date_add.test:
Added end marker for test to make future merges easier
mysql-test/t/func_default.test:
Added end marker for test to make future merges easier
mysql-test/t/func_des_encrypt.test:
Added end marker for test to make future merges easier
mysql-test/t/func_encrypt.test:
Added end marker for test to make future merges easier
mysql-test/t/func_encrypt_nossl.test:
Added end marker for test to make future merges easier
mysql-test/t/func_equal.test:
Added end marker for test to make future merges easier
mysql-test/t/func_gconcat.test:
Added end marker for test to make future merges easier
mysql-test/t/func_group.test:
Added end marker for test to make future merges easier
mysql-test/t/func_if.test:
Added end marker for test to make future merges easier
mysql-test/t/func_in.test:
Added end marker for test to make future merges easier
mysql-test/t/func_isnull.test:
Added end marker for test to make future merges easier
mysql-test/t/func_like.test:
Added end marker for test to make future merges easier
mysql-test/t/func_math.test:
Added end marker for test to make future merges easier
mysql-test/t/func_misc.test:
Added end marker for test to make future merges easier
mysql-test/t/func_op.test:
Added end marker for test to make future merges easier
mysql-test/t/func_regexp.test:
Added end marker for test to make future merges easier
mysql-test/t/func_sapdb.test:
Added end marker for test to make future merges easier
mysql-test/t/func_set.test:
Added end marker for test to make future merges easier
mysql-test/t/func_str.test:
Added end marker for test to make future merges easier
mysql-test/t/func_system.test:
Added end marker for test to make future merges easier
mysql-test/t/func_test.test:
Added end marker for test to make future merges easier
mysql-test/t/func_time.test:
Added end marker for test to make future merges easier
mysql-test/t/func_timestamp.test:
Added end marker for test to make future merges easier
mysql-test/t/gcc296.test:
Added end marker for test to make future merges easier
mysql-test/t/gis-rtree.test:
Added end marker for test to make future merges easier
mysql-test/t/gis.test:
Added end marker for test to make future merges easier
mysql-test/t/grant.test:
Added end marker for test to make future merges easier
mysql-test/t/grant2.test:
Added end marker for test to make future merges easier
mysql-test/t/grant_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/group_by.test:
Added end marker for test to make future merges easier
mysql-test/t/handler.test:
Added end marker for test to make future merges easier
mysql-test/t/having.test:
Added end marker for test to make future merges easier
mysql-test/t/heap.test:
Added end marker for test to make future merges easier
mysql-test/t/heap_auto_increment.test:
Added end marker for test to make future merges easier
mysql-test/t/heap_btree.test:
Added end marker for test to make future merges easier
mysql-test/t/heap_hash.test:
Added end marker for test to make future merges easier
mysql-test/t/help.test:
Added end marker for test to make future merges easier
mysql-test/t/init_connect.test:
Added end marker for test to make future merges easier
mysql-test/t/init_file.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb-deadlock.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb-lock.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb-replace.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/innodb_handler.test:
Added end marker for test to make future merges easier
mysql-test/t/insert.test:
Added end marker for test to make future merges easier
mysql-test/t/insert_select-binlog.test:
Added end marker for test to make future merges easier
mysql-test/t/insert_select.test:
Added end marker for test to make future merges easier
mysql-test/t/insert_update.test:
Added end marker for test to make future merges easier
mysql-test/t/isam.test:
Added end marker for test to make future merges easier
mysql-test/t/join.test:
Added end marker for test to make future merges easier
mysql-test/t/join_crash.test:
Added end marker for test to make future merges easier
mysql-test/t/join_outer.test:
Added end marker for test to make future merges easier
mysql-test/t/key.test:
Added end marker for test to make future merges easier
mysql-test/t/key_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/key_diff.test:
Added end marker for test to make future merges easier
mysql-test/t/key_primary.test:
Added end marker for test to make future merges easier
mysql-test/t/keywords.test:
Added end marker for test to make future merges easier
mysql-test/t/kill.test:
Added end marker for test to make future merges easier
mysql-test/t/limit.test:
Added end marker for test to make future merges easier
mysql-test/t/loaddata.test:
Added end marker for test to make future merges easier
mysql-test/t/lock.test:
Added end marker for test to make future merges easier
mysql-test/t/lock_multi.test:
Added end marker for test to make future merges easier
mysql-test/t/lock_tables_lost_commit.test:
Added end marker for test to make future merges easier
mysql-test/t/lowercase_table.test:
Added end marker for test to make future merges easier
mysql-test/t/lowercase_table2.test:
Added end marker for test to make future merges easier
mysql-test/t/lowercase_table3.test:
Added end marker for test to make future merges easier
mysql-test/t/lowercase_table_grant.test:
Added end marker for test to make future merges easier
mysql-test/t/lowercase_table_qcache.test:
Added end marker for test to make future merges easier
mysql-test/t/merge.test:
Added end marker for test to make future merges easier
mysql-test/t/metadata.test:
Added end marker for test to make future merges easier
mysql-test/t/mix_innodb_myisam_binlog.test:
Added end marker for test to make future merges easier
mysql-test/t/multi_statement.test:
Added end marker for test to make future merges easier
mysql-test/t/multi_update.test:
Added end marker for test to make future merges easier
mysql-test/t/myisam-blob.test:
Added end marker for test to make future merges easier
mysql-test/t/myisam.test:
Added end marker for test to make future merges easier
mysql-test/t/mysql_client_test.test:
Added end marker for test to make future merges easier
mysql-test/t/mysql_protocols.test:
Added end marker for test to make future merges easier
mysql-test/t/mysqlbinlog.test:
Added end marker for test to make future merges easier
mysql-test/t/mysqlbinlog2.test:
Added end marker for test to make future merges easier
mysql-test/t/mysqldump.test:
Added end marker for test to make future merges easier
mysql-test/t/mysqltest.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_alter_table.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_autodiscover.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_autodiscover2.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_basic.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_blob.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_charset.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_config.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_database.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_grant.later:
Added end marker for test to make future merges easier
mysql-test/t/ndb_index.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_index_ordered.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_index_unique.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_insert.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_limit.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_lock.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_minmax.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_multi.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_replace.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_restore.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_subquery.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_transaction.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_truncate.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_types.test:
Added end marker for test to make future merges easier
mysql-test/t/ndb_update.test:
Added end marker for test to make future merges easier
mysql-test/t/negation_elimination.test:
Added end marker for test to make future merges easier
mysql-test/t/not_embedded_server.test:
Added end marker for test to make future merges easier
mysql-test/t/null.test:
Added end marker for test to make future merges easier
mysql-test/t/null_key.test:
Added end marker for test to make future merges easier
mysql-test/t/odbc.test:
Added end marker for test to make future merges easier
mysql-test/t/olap.test:
Added end marker for test to make future merges easier
mysql-test/t/openssl_1.test:
Added end marker for test to make future merges easier
mysql-test/t/order_by.test:
Added end marker for test to make future merges easier
mysql-test/t/order_fill_sortbuf.test:
Added end marker for test to make future merges easier
mysql-test/t/outfile.test:
Added end marker for test to make future merges easier
mysql-test/t/overflow.test:
Added end marker for test to make future merges easier
mysql-test/t/packet.test:
Added end marker for test to make future merges easier
mysql-test/t/preload.test:
Added end marker for test to make future merges easier
mysql-test/t/ps.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_10nestset.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_11bugs.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_1general.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_2myisam.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_3innodb.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_4heap.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_5merge.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_6bdb.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_7ndb.test:
Added end marker for test to make future merges easier
mysql-test/t/ps_grant.test:
Added end marker for test to make future merges easier
mysql-test/t/query_cache.test:
Added end marker for test to make future merges easier
mysql-test/t/query_cache_merge.test:
Added end marker for test to make future merges easier
mysql-test/t/raid.test:
Added end marker for test to make future merges easier
mysql-test/t/range.test:
Added end marker for test to make future merges easier
mysql-test/t/rename.test:
Added end marker for test to make future merges easier
mysql-test/t/repair.test:
Added end marker for test to make future merges easier
mysql-test/t/replace.test:
Added end marker for test to make future merges easier
mysql-test/t/rollback.test:
Added end marker for test to make future merges easier
mysql-test/t/row.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000001.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000002.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000004.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000005.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000006.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000008.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000009.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000010.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000011.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000012.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000013.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000015.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000017.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl000018.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_EE_error.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_alter.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_chain_temp_table.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_change_master.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_charset.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_commit_after_flush.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_create_database.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_ddl.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_deadlock.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_delete_all.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_do_grant.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_drop.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_drop_temp.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_empty_master_crash.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_error_ignored_table.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_failed_optimize.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_failsafe.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_flush_log_loop.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_flush_tables.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_free_items.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_get_lock.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_heap.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_ignore_grant.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_init_slave.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_innodb.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_insert_id.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_insert_ignore.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_loaddata.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_loaddata_rule_m.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_loaddata_rule_s.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_loaddatalocal.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_log.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_log_pos.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_many_optimize.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_master_pos_wait.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_max_relay_size.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_misc_functions.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_delete.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_delete2.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_query.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_update.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_update2.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_multi_update3.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_mystery22.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_openssl.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_optimize.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_ps.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_redirect.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_relayrotate.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_relayspace.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_replicate_do.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_reset_slave.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_rewrite_db.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_rotate_logs.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_server_id1.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_server_id2.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_set_charset.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_skip_error.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_sporadic_master.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_start_stop_slave.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_temporary.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_timezone.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_trunc_binlog.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_until.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_user_variables.test:
Added end marker for test to make future merges easier
mysql-test/t/rpl_variables.test:
Added end marker for test to make future merges easier
mysql-test/t/select.test:
Added end marker for test to make future merges easier
mysql-test/t/select_found.test:
Added end marker for test to make future merges easier
mysql-test/t/select_safe.test:
Added end marker for test to make future merges easier
mysql-test/t/show_check.test:
Added end marker for test to make future merges easier
mysql-test/t/skip_name_resolve.test:
Added end marker for test to make future merges easier
mysql-test/t/sql_mode.test:
Added end marker for test to make future merges easier
mysql-test/t/status.test:
Added end marker for test to make future merges easier
mysql-test/t/subselect.test:
Added end marker for test to make future merges easier
mysql-test/t/subselect2.test:
Added end marker for test to make future merges easier
mysql-test/t/subselect_gis.test:
Added end marker for test to make future merges easier
mysql-test/t/subselect_innodb.test:
Added end marker for test to make future merges easier
mysql-test/t/symlink.test:
Added end marker for test to make future merges easier
mysql-test/t/synchronization.test:
Added end marker for test to make future merges easier
mysql-test/t/system_mysql_db.test:
Added end marker for test to make future merges easier
mysql-test/t/system_mysql_db_fix.test:
Added end marker for test to make future merges easier
mysql-test/t/system_mysql_db_refs.test:
Added end marker for test to make future merges easier
mysql-test/t/tablelock.test:
Added end marker for test to make future merges easier
mysql-test/t/temp_table.test:
Added end marker for test to make future merges easier
mysql-test/t/timezone.test:
Added end marker for test to make future merges easier
mysql-test/t/timezone2.test:
Added end marker for test to make future merges easier
mysql-test/t/timezone3.test:
Added end marker for test to make future merges easier
mysql-test/t/timezone_grant.test:
Added end marker for test to make future merges easier
mysql-test/t/truncate.test:
Added end marker for test to make future merges easier
mysql-test/t/type_blob.test:
Added end marker for test to make future merges easier
mysql-test/t/type_date.test:
Added end marker for test to make future merges easier
mysql-test/t/type_datetime.test:
Added end marker for test to make future merges easier
mysql-test/t/type_decimal.test:
Added end marker for test to make future merges easier
mysql-test/t/type_enum.test:
Added end marker for test to make future merges easier
mysql-test/t/type_float.test:
Added end marker for test to make future merges easier
mysql-test/t/type_nchar.test:
Added end marker for test to make future merges easier
mysql-test/t/type_ranges.test:
Added end marker for test to make future merges easier
mysql-test/t/type_set.test:
Added end marker for test to make future merges easier
mysql-test/t/type_time.test:
Added end marker for test to make future merges easier
mysql-test/t/type_timestamp.test:
Added end marker for test to make future merges easier
mysql-test/t/type_uint.test:
Added end marker for test to make future merges easier
mysql-test/t/type_year.test:
Added end marker for test to make future merges easier
mysql-test/t/union.test:
Added end marker for test to make future merges easier
mysql-test/t/update.test:
Added end marker for test to make future merges easier
mysql-test/t/user_var-binlog.test:
Added end marker for test to make future merges easier
mysql-test/t/user_var.test:
Added end marker for test to make future merges easier
mysql-test/t/varbinary.test:
Added end marker for test to make future merges easier
mysql-test/t/variables.test:
Added end marker for test to make future merges easier
mysql-test/t/warnings.test:
Added end marker for test to make future merges easier
mysql-test/r/case.result:
test result fixed
mysql-test/r/create.result:
test result fixed
mysql-test/r/distinct.result:
test result fixed
mysql-test/r/func_group.result:
test result fixed
mysql-test/r/func_op.result:
test result fixed
mysql-test/r/group_by.result:
test result fixed
mysql-test/r/metadata.result:
test result fixed
mysql-test/r/olap.result:
test result fixed
mysql-test/r/ps_2myisam.result:
test result fixed
mysql-test/r/ps_3innodb.result:
test result fixed
mysql-test/r/ps_4heap.result:
test result fixed
mysql-test/r/ps_5merge.result:
test result fixed
mysql-test/r/ps_6bdb.result:
test result fixed
mysql-test/r/ps_7ndb.result:
test result fixed
mysql-test/r/select.result:
test result fixed
mysql-test/r/sp.result:
test result fixed
mysql-test/r/type_decimal.result:
test result fixed
mysql-test/r/type_newdecimal.result:
test result fixed
mysql-test/r/union.result:
test result fixed
mysql-test/r/variables.result:
test result fixed
mysql-test/t/func_group.test:
test modified
mysql-test/t/olap.test:
test modified
mysql-test/t/type_decimal.test:
test modified
Added a test case for bug #9210.
sql_select.cc:
Fixed bug #9210.
The function calc_group_buffer did not cover the case
when the GROUP BY expression was decimal.
Slightly optimized the other code.
sql/sql_select.cc:
Fixed bug #9210.
The function calc_group_buffer did not cover the case
when the GROUP by expression was decimal.
Slightly optimized the other code.
mysql-test/t/func_group.test:
Added a test case for bug #9210.
Item_sum_count_distinct, and
deploy Unique for use with COUNT(DISTINCT) if there is no blob
column in the list of DISTINCT arguments.
mysql-test/r/count_distinct2.result:
Test results fixed.
mysql-test/r/func_group.result:
Updated.
mysql-test/r/sum_distinct.result:
Updated.
mysql-test/t/func_group.test:
Add a test for COUNT(DISTINCT) and true varchar and case-insensitive
collation. The table in the test contains only two distinct values.
mysql-test/t/sum_distinct.test:
Since now we support INSERT INTO t1 (a) SELECT a+1 FROM t1, shorten
the test.
Add a nominal test for AVG(DISTINCT)
sql/item_sum.cc:
Implementation of cleaned up Item_sum_count_distinct.
Fixed a bug with COUNT(DISTINCT) and new VARCHAR and collations.
Fixed a bug wiht AVG(DISTINCT) and wrong number of output digits
after decimal point.
sql/item_sum.h:
Cleanup for Item_sum_count_distinct.
Now if the list of distinct arguments doesn't contain a blob column,
we always use Unique and merge-sort to find distinct values.
sql/sql_class.h:
Added a short-cut to find number of elements in Unique if all elements fit
into memory.
Actually problem was not in AVG function, but in SUM before the AVG in the
query.
mysql-test/r/func_group.result:
appropriate test result
mysql-test/t/func_group.test:
test case added
strings/decimal.c:
in this case we also need to make fsizes equal
after merge fixes
mysql-test/r/func_group.result:
after merge fixes
mysql-test/r/func_str.result:
after merge fixes
mysql-test/t/func_group.test:
after merge fixes
BitKeeper/etc/logging_ok:
auto-union
innobase/trx/trx0trx.c:
Auto merged
mysql-test/r/ctype_collate.result:
Auto merged
mysql-test/r/func_system.result:
Auto merged
mysql-test/r/type_blob.result:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/opt_sum.cc:
Auto merged
innobase/ut/ut0mem.c:
e
merge from 4.1
mysql-test/r/func_group.result:
merge from 4.1
mysql-test/r/func_str.result:
merge from 4.1
mysql-test/t/func_group.test:
merge from 4.1
Logging to logging@openlogging.org accepted
func_group.result, func_group.test:
Added a test case for bug #8893.
opt_sum.cc:
A misplaced initialization for the returned parameter
prefix_len in the function find_key_for_maxmin caused
usage of a wrong key prefix by the min/max optimization
in cases when the matching index was not the first index
that contained the min/max field.
sql/opt_sum.cc:
A misplaced initialization for the returned parameter
prefix_len in the function find_key_for_maxmin caused
usage of a wrong key prefix by the min/max optimization
in cases when the matching index was not the first index
that contained the min/max field.
mysql-test/t/func_group.test:
Added a test case for bug #8893.
mysql-test/r/func_group.result:
Added a test case for bug #8893.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
mysql-test/r/func_group.result:
Added some tests and fix for Bug#5615.
mysql-test/r/show_check.result:
Fix for Bug#5615.
mysql-test/t/func_group.test:
Added some tests.
sql/item_sum.cc:
Fix for Bug#5615.
sql/item_sum.h:
Fix for Bug#5615.
sql/sql_select.cc:
Fix for Bug#5615.
sql/sql_select.h:
Fix for Bug#5615.
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/select_found.result:
Auto merged
mysql-test/r/show_check.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/show_check.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_show.cc:
Auto merged
strings/ctype-bin.c:
Auto merged
sql/sql_select.cc:
SCCS merged
This bug is also known as WL#1639.
mysql-test/r/func_group.result:
Test case for stddev_pop, var_pop, stddev_samp, var_samp was added.
mysql-test/t/func_group.test:
Test case for stddev_pop, var_pop, stddev_samp, var_samp was added.
sql/item_sum.cc:
New functions stddev_samp and var_samp were added.
sql/item_sum.h:
New functions stddev_samp and var_samp were added.
sql/lex.h:
New functions stddev_pop, var_pop, stddev_samp and var_samp were added.
sql/sql_yacc.yy:
New functions stddev_pop, var_pop, stddev_samp and var_samp were added.
mysql-test/r/analyse.result:
test result extended
mysql-test/r/cast.result:
test result extended
mysql-test/r/func_group.result:
test result extended
mysql-test/r/subselect.result:
test result extended
mysql-test/t/analyse.test:
test extended
mysql-test/t/cast.test:
test extended
mysql-test/t/func_group.test:
test extended
mysql-test/t/subselect.test:
test extended
Lots of small fixes to multi-precision-math path
Give Note for '123.4e'
Added helper functions type 'val_string_from_real()
Don't give warnings for end space for string2decimal()
Changed storage of values for SP so that we can detect length of argument without strlen()
Changed interface for str2dec() so that we must supple the pointer to the last character in the buffer
BUILD/SETUP.sh:
with-bdb ->with-berkeley-db
include/decimal.h:
Make string2decimal and string2decimal_fixed inline
mysql-test/r/func_group.result:
More tests (to find bugs in precision math fixes)
mysql-test/r/func_set.result:
Test to cover more Item_func_field::val_xxx() code
mysql-test/r/ps_6bdb.result:
update results
mysql-test/r/type_decimal.result:
New tests
Give note for '123.4e'
mysql-test/r/type_newdecimal.result:
Number of decimal changes (probably right, but hard to verify)
mysql-test/t/func_group.test:
More tests (to find bugs in precision math fixes)
mysql-test/t/func_set.test:
Test to cover more Item_func_field::val_xxx() code
mysql-test/t/type_decimal.test:
New tests to cover more cases in decimal.c
sql/item.cc:
Added helper functions type 'val_string_from_real()'
Use new interfase to str2my_decimal()
Moved nr_of_decimals() here (and made it static)
sql/item.h:
Added helper functions type 'val_string_from_real()'
sql/item_func.cc:
Style fixes
Trivial optimizations
Ensure null_value is set if my_decimal_add/sub/mul/div returns error
Remove not needed Item_func_int_div::val_str()
Join Item_func_signproc and Item_func_neg
Fix that FIELD() works when first argument is NULL or one if it's arguments are NULL
new str2my_decimal interface
sql/item_func.h:
Make Item_func_int_div inherit from Item_int_func (allows us to remove some virtual functions)
Join Item_func_signproc & Item_func_neg
sql/item_strfunc.cc:
Move nr_of_decmails() to Item.cc (as it was only used here)
sql/item_sum.cc:
Style fixes
Change a lot of code to use new helper converter functions in item.cc
Moved Item_sum::val_decimal() to Item_sum_int::val_decimal()
Fixed calls to wrong functions (Item_sum_num::val_int())
Ensure that all hybrid functions checks hybrid_type in val_xxx() (As there is no gurantee that they are called in the right context)
Simplify key_length allocation in Item_sum_sum_distinct()
Simplified create_tmp_field() and reset_field()
Fixed potential error in Item_sum_hybrid::reset_field()
Optimize Item_sum_avg::update_field()
Item_std_field() functions musted be fully coded becasue Item_variance_field::val_xxx functions called helper functions
Coded missing Item_sum_ufd_xxx::val_decimal() functions
sql/item_sum.h:
Moved Item_sum::val_decimal() to Item_sum_int::val_decimal()
Added missing Item_sum_ufd_xxx::val_decimal() functions
Removed not used scale() function.
Fixed that Item_std_field() works with decimal arguments
Fixed that CREATE ... STD() will create a REAL field
sql/log_event.cc:
Ensure that we use same format for all types
sql/my_decimal.cc:
Don't give warnings for end space for string2decimal()
Added dbug_print_decimal()
sql/my_decimal.h:
Style fixes
Prototypes for new functions
New interface for str2my_decimal()
sql/mysql_priv.h:
Made nr_of_decimals() static
sql/protocol.cc:
Simplify code (by assume that decimal can't be bigger than DECIMAL_MAX_STR_LENGTH]
sql/protocol_cursor.cc:
Changed storage of values for SP so that we can detect length of argument without strlen()
sql/sp_head.cc:
Simplify code for decimal handling by letting item handling conversion to decimal
sql/sp_rcontext.cc:
Use new method to get length of arguments
sql/sql_analyse.cc:
if -> switch
Increase 'empty' if decimal value=0
Remove usage of strcat()
sql/sql_base.cc:
Remove unnecessary checks
sql/sql_class.cc:
Remove not needed 'else'
Removed not used variables
sql/sql_select.cc:
remove test for impossible condtion
strings/decimal.c:
Made two trivial functions macros
Changed interface for str2dec() so that we must supple the pointer to the last character in the buffer
This safer than before as we don't require an end \0 anymore (old code gave wrong answers in MySQL for some internals strings that where not \0 terminated)
Detect error numbers of type '12.55e'
str2dec() will now set 'to' to zero in case of errors
client/mysqlcheck.c:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/ft_static.c:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/multi_update.test:
Auto merged
mysql-test/t/union.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/ha_myisam.h:
Auto merged
sql/handler.h:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/field.cc:
Clean up merge
bug#7833: Wrong datatype of aggregate column is returned
mysql-test/r/func_group.result:
Test case for bug 7833: Wrong datatype of aggregate column is returned
mysql-test/r/union.result:
Test case for bug 6931: Date Type column problem when using UNION-Table.
mysql-test/t/func_group.test:
Test case for bug 7833: Wrong datatype of aggregate column is returned
mysql-test/t/union.test:
Test case for bug 6931: Date Type column problem when using UNION-Table.
Add support for warnings for prepare of prepared statements
Fixed test to work with --ps-protocol
Fixed some test results
libmysql/libmysql.c:
Add support for warnings for prepare of prepared statements
mysql-test/r/func_concat.result:
After merge fixes
mysql-test/r/select.result:
Delete conflicting tables form previous tests
mysql-test/r/view.result:
New code from 4.1 fixed old error
mysql-test/t/create.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/func_group.test:
Remove not needed --disable_ps_protocol
mysql-test/t/func_time.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/having.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/insert_select.test:
Remove not needed --disable_ps_protocol
mysql-test/t/select.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/sp.test:
Fixed comment
mysql-test/t/system_mysql_db_fix.test:
Fix that results is same as from system_mysql_db.test
mysql-test/t/trigger.test:
Added comment
mysql-test/t/type_blob.test:
Remove not needed --disable_ps_protocol
mysql-test/t/union.test:
Run most of the test with --ps-protocol
mysql-test/t/user_limits.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/view.test:
Removed --error as bug is now fixed
mysql-test/t/warnings.test:
Ensure that --ps-protocol return same results as normal test
ndb/include/Makefile.am:
Don't automaticly use SCCS files
sql/ha_ndbcluster.cc:
Removed compiler warning
sql/log_event.cc:
After merge fix
sql/sql_class.h:
After merge fix
sql/sql_insert.cc:
After merge fix
sql/sql_load.cc:
After merge fix
sql/sql_prepare.cc:
Add support for warnings for prepare of prepared statements
sql/sql_update.cc:
After merge fixes
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
client/Makefile.am:
Auto merged
client/mysqlbinlog.cc:
Auto merged
configure.in:
Auto merged
include/my_time.h:
Auto merged
innobase/fil/fil0fil.c:
Auto merged
innobase/include/fil0fil.h:
Auto merged
libmysql/libmysql.c:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_sum.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
tests/client_test.c:
Auto merged
BitKeeper/etc/ignore:
auto-union
BitKeeper/etc/logging_ok:
auto-union
BitKeeper/triggers/post-commit:
Auto merged
Docs/Support/texi2html:
Auto merged
Makefile.am:
Auto merged
client/Makefile.am:
Auto merged
client/mysql.cc:
Auto merged
client/mysqldump.c:
Auto merged
include/my_base.h:
Auto merged
include/my_global.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
include/mysql_com.h:
Auto merged
innobase/buf/buf0buf.c:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/row/row0sel.c:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/examples/Makefile.am:
Auto merged
myisam/mi_check.c:
Auto merged
mysql-test/include/ps_modify.inc:
Auto merged
mysql-test/install_test_db.sh:
Auto merged
mysql-test/r/alter_table.result:
Auto merged
mysql-test/r/auto_increment.result:
Auto merged
mysql-test/r/bdb.result:
Auto merged
mysql-test/r/ctype_latin1_de.result:
Auto merged
mysql-test/r/ctype_recoding.result:
Auto merged
mysql-test/r/fulltext.result:
Auto merged
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_if.result:
Auto merged
mysql-test/t/derived.test:
Auto merged
mysql-test/t/insert.test:
merge with 4.1
Fixed test case to not use 'if exists' when it shouldn't
mysql-test/t/range.test:
merge with 4.1
Added missing drop table
sql/ha_ndbcluster.cc:
merge with 4.1
Simple optimization: use max() instead of ? :
sql/item_func.cc:
merge with 4.1
(Added back old variable names for easier merges)
sql/opt_range.cc:
merge with 4.1
Removed argument 'parent_alloc' from QUICK_RANGE_SELECT as this was not used
Added assert if using QUICK_GROUP_MIN_MAX_SELECT with parent_alloc as the init() function can't handle this
Changed back get_quick_select_for_ref() to use it's own alloc root becasue this function may be called several times for one query
sql/sql_handler.cc:
merge with 4.1
change variable 'err' to 'error' as same function had a label named 'err'
sql/sql_update.cc:
Use multi-update code from 5.0 instead of 4.1
We will fix the locking code shortly in 5.0 to be faster than in 4.1
New mysqltest that can run mysqltest with PS
Added support for ZEROFILL in PS
Fixed crash when one called mysql_stmt_store_result() without a preceding mysql_stmt_bind_result()
Updated test cases to support --ps-protocol
(Some tests are still run using old protocol)
Fixed crash in PS when using SELECT * FROM t1 NATURAL JOIN t2...
Fixed crash in PS when using sub queries
Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
Fixed wrong permissions check in PS and multi-table updates (one could get permission denied for legal quries)
Fix for PS and SELECT ... PROCEDURE
Reset all warnings when executing a new PS query
group_concat(...ORDER BY) didn't work with PS
Fixed problem with test suite when not using innodb
BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
Delete: mysql-test/t/innodb-lock-master.opt
client/Makefile.am:
mysqltest now uses regex
client/mysqltest.c:
Added support for testing of prepared statements (with --ps-protocol)
Main code was done by Kent, I did mainly some cleanups and minor bug fixes
New test commands:
--disable_ps_protocol
--enable_ps_protocol
NOTE: new code still has some things that needs to be cleaned up.
For example run_query_stmt_handle_error() should be made more general so that same code can be used also by 'normal' queries
configure.in:
mysqltest now uses regex
libmysql/libmysql.c:
Reset warning_count after prepare (safety). In the future we should also provide warnings on prepare
integer -> string conversion now handles ZEROFILL
double -> string conversion is now closer to the one in the server
Fixed crash when one called mysql_stmt_store_result() without preceding mysql_stmt_bind_result()
libmysqld/examples/Makefile.am:
mysqltest now uses regex
mysql-test/include/have_query_cache.inc:
Fixes for --ps-protocol
mysql-test/include/ps_conv.inc:
Fixes for --ps-protocol
mysql-test/mysql-test-run.sh:
Added options --ps-protocol
mysql-test/r/ctype_utf8.result:
Fixed test case
mysql-test/r/fulltext_cache.result:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/fulltext_left_join.result:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/fulltext_multi.result:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/r/innodb-lock.result:
Fixed test to work even if Innodb is not compiled in.
mysql-test/t/create.test:
Fixes for --ps-protocol
mysql-test/t/ctype_utf8.test:
Remove warnings
mysql-test/t/date_formats.test:
Fixes for --ps-protocol
mysql-test/t/fulltext_cache.test:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/fulltext_left_join.test:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/fulltext_multi.test:
Changed output of MATCH to use round() to get same numbers with --ps-protocol
mysql-test/t/func_group.test:
Fixes for --ps-protocol
mysql-test/t/func_sapdb.test:
Fixes for --ps-protocol
mysql-test/t/innodb-lock.test:
Fixed test to work even if Innodb is not compiled in.
mysql-test/t/insert.test:
Fixes for --ps-protocol
mysql-test/t/insert_select.test:
Fixes for --ps-protocol
mysql-test/t/insert_update.test:
Fixes for --ps-protocol
mysql-test/t/metadata.test:
Fixes for --ps-protocol
mysql-test/t/multi_statement.test:
Fixes for --ps-protocol
mysql-test/t/ps_1general.test:
Fixes for --ps-protocol
mysql-test/t/rollback.test:
Fixes for --ps-protocol
mysql-test/t/rpl_redirect.test:
Fixes for --ps-protocol
mysql-test/t/rpl_user_variables.test:
Fixes for --ps-protocol
mysql-test/t/select.test:
Fixes for --ps-protocol
mysql-test/t/status.test:
Fixes for --ps-protocol
mysql-test/t/type_blob.test:
Fixes for --ps-protocol
mysql-test/t/type_float.test:
Fixes for --ps-protocol
mysql-test/t/union.test:
Fixes for --ps-protocol
mysql-test/t/warnings.test:
Fixes for --ps-protocol
mysys/my_alloc.c:
More debugging information
sql-common/client.c:
More debugging information
sql-common/my_time.c:
TIME didn't support full range with PS
sql/field.cc:
TIME didn't support full range with PS
sql/item_cmpfunc.cc:
IN(constants,...) didn't work with PS
sql/item_subselect.cc:
Some subqueries didn't work with PS
sql/item_sum.cc:
group_concat(...ORDER BY) didn't work with PS
Removed variable warning_available as 'warning' can be used for this.
sql/item_sum.h:
Removed not needed variable
sql/protocol.cc:
TIME didn't support full range with PS
sql/set_var.cc:
Style fix
sql/sql_base.cc:
setup_wild() didn't properly restore old arena, which caused core dump in PS when using
SELECT * FROM t1 NATURAL JOIN t2...
sql/sql_class.cc:
Style fix
sql/sql_error.cc:
Style fix
sql/sql_insert.cc:
Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
sql/sql_lex.h:
Fix for PS and procedures
sql/sql_parse.cc:
More debugging information
Make a copy of 'db' in PS as this may change
Fixed wrong permissions check in PS and multi-table updates
sql/sql_prepare.cc:
Fix for PS and SELECT ... PROCEDURE
Reset all warnings when executing a new query
sql/sql_union.cc:
Fixes for PS and SELECT ... PROCEDURE
Reset 'with_wild' as 'wild' is resolved on prepare
mysql-test/r/func_group.result:
test case (bug #5615 type of aggregate function column wrong when using group by)
mysql-test/t/func_group.test:
test case (bug #5615 type of aggregate function column wrong when using group by)
sql/sql_select.cc:
A fix (bug #5615 type of aggregate function column wrong when using group by):
should create a temporary field of the proper type in case of
MIN|MAX(field).
Added test case for bug #5406.
opt_sum.cc:
Fixed bug #5406.
sql/opt_sum.cc:
Fixed bug #5406.
mysql-test/r/func_group.result:
Added test case for bug #5406.
mysql-test/t/func_group.test:
Added test case for bug #5406.
Note: The following tests fails
- fulltext (Sergei has promised to fix)
- rpl_charset (Guilhem should fix)
- rpl_timezone (Dimitray has promised to fix)
Sanja needs to check out the calling of close_thread_tables() in sp_head.cc
myisam/mi_check.c:
After merge fix
myisam/sort.c:
After merge fix
mysql-test/mysql-test-run.sh:
Export master socket to mysqltest
mysql-test/r/func_group.result:
Make result repeatable
mysql-test/r/mysqlbinlog.result:
After merge fix
mysql-test/r/ps_1general.result:
After merge fix
mysql-test/r/ps_2myisam.result:
After merge fix
mysql-test/r/ps_3innodb.result:
After merge fix
mysql-test/r/ps_4heap.result:
After merge fix
mysql-test/r/ps_5merge.result:
After merge fix
mysql-test/r/ps_6bdb.result:
After merge fix
mysql-test/r/rpl_flush_log_loop.result:
After merge fix
mysql-test/r/rpl_replicate_do.result:
After merge fix
mysql-test/r/rpl_temporary.result:
After merge fix
mysql-test/r/rpl_timezone.result:
After merge fix
Note that this test fails now (Dimitry has promised to fix this)
mysql-test/r/rpl_user_variables.result:
After merge fix
mysql-test/r/select.result:
After merge fix
mysql-test/r/sp-error.result:
After merge fix
mysql-test/r/sp-security.result:
After merge fix
mysql-test/r/sp.result:
After merge fix
mysql-test/r/user_var.result:
After merge fix
mysql-test/r/variables.result:
After merge fix
mysql-test/t/alter_table.test:
After merge fix
mysql-test/t/derived.test:
After merge fix
mysql-test/t/func_group.test:
Make result repeatable
mysql-test/t/grant_cache.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/multi_update.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/rpl000015.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/rpl000017.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/rpl000018.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/rpl_charset.test:
After merge fix
mysql-test/t/rpl_heap.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/rpl_rotate_logs.test:
Use MASTER_MYSOCK instead of master.sock
mysql-test/t/sp-error.test:
after merge fix
mysql-test/t/sp-security.test:
after merge fix
mysql-test/t/user_var.test:
after merge fix
scripts/mysql_fix_privilege_tables.sh:
This can now be exectued from the source distribution
sql/handler.cc:
Cleanup
sql/handler.h:
More debugging
sql/item.h:
Indentation fixes
sql/item_cmpfunc.cc:
After merge fixes
sql/opt_range.cc:
After merge fixes
sql/opt_range.h:
After merge fixes
sql/sp.cc:
After merge fixes
sql/sp_head.cc:
Remove closing of thread tables in a SP function as this caused a core dump.
(Has to be fixed better)
sql/sql_base.cc:
More debugging
sql/sql_handler.cc:
After merge fixes
(We have to call ha_index_or_rnd_end() before calling close_thread_table())
sql/sql_parse.cc:
More debugging
sql/sql_prepare.cc:
After merge fixes
sql/sql_select.cc:
After merge fixes
mysql-test/r/func_group.result:
test of optimized aggregate function re-execution
mysql-test/t/func_group.test:
test of optimized aggregate function re-execution
sql/item_sum.cc:
cleunup() added
sql/item_sum.h:
cleunup() added
innobase/dict/dict0boot.c:
Auto merged
innobase/dict/dict0load.c:
Auto merged
innobase/dict/dict0mem.c:
Auto merged
innobase/fut/fut0lst.c:
Auto merged
innobase/include/buf0lru.h:
Auto merged
innobase/include/dict0mem.h:
Auto merged
innobase/include/fsp0fsp.h:
Auto merged
innobase/include/ha0ha.h:
Auto merged
innobase/include/ibuf0ibuf.h:
Auto merged
innobase/include/lock0lock.h:
Auto merged
innobase/include/log0log.h:
Auto merged
innobase/include/mem0pool.h:
Auto merged
innobase/include/mtr0mtr.h:
Auto merged
innobase/include/os0file.h:
Auto merged
innobase/include/rem0rec.h:
Auto merged
innobase/include/rem0rec.ic:
Auto merged
innobase/include/srv0srv.h:
Auto merged
innobase/include/sync0sync.h:
Auto merged
innobase/include/trx0sys.h:
Auto merged
innobase/include/ut0byte.h:
Auto merged
innobase/include/ut0ut.h:
Auto merged
innobase/mem/mem0pool.c:
Auto merged
innobase/mtr/mtr0mtr.c:
Auto merged
innobase/os/os0proc.c:
Auto merged
innobase/pars/lexyy.c:
Auto merged
innobase/pars/pars0opt.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0purge.c:
Auto merged
innobase/row/row0uins.c:
Auto merged
innobase/row/row0umod.c:
Auto merged
innobase/row/row0undo.c:
Auto merged
innobase/row/row0upd.c:
Auto merged
innobase/trx/trx0purge.c:
Auto merged
innobase/trx/trx0roll.c:
Auto merged
innobase/trx/trx0sys.c:
Auto merged
innobase/trx/trx0undo.c:
Auto merged
innobase/ut/ut0byte.c:
Auto merged
pstack/bucomm.h:
Auto merged
pstack/budbg.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_db.cc:
Auto merged
support-files/mysql.spec.sh:
Auto merged
tests/insert_test.c:
Auto merged
mysql-test/t/func_group.test:
Merge with 4.0
Put 4.1 tests lasts
sql/ha_innodb.cc:
Merge with 4.0
Added checking of results from my_malloc()
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted