The bug is a regression introduced by the patch for bug32798.
The code in Item_func_group_concat::clear() relied on the 'distinct'
variable to check if 'unique_filter' was initialized. That, however,
is not always valid because Item_func_group_concat::setup() can do
shortcuts in some cases w/o initializing 'unique_filter'.
Fixed by checking the value of 'unique_filter' instead of 'distinct'
before dereferencing.
mysql-test/r/func_gconcat.result:
Added test cases for bugs #35298 and #36024.
mysql-test/t/func_gconcat.test:
Added test cases for bugs #35298 and #36024.
sql/item_sum.cc:
Check if unique_filter != NULL before dereferencing it. Non-zero value
of distinct does not always mean that unique_filter is initialized
because Item_func_group_concat::setup() can do shortcuts is some cases
Was a double-free of the Unique member of Item_func_group_concat.
This was not causing a crash because the Unique is a descendent of
Sql_alloc.
Fixed to free the Unique only if it was allocated for the instance
of Item_func_group_concat it was referenced from
mysql-test/r/func_gconcat.result:
Bug #34747: test case
mysql-test/t/func_gconcat.test:
Bug #34747: test case
sql/item_sum.cc:
Bug #34747: free the Unique only if it was allocated
for this instance of Item_func_group_concat
with null values
For queries containing GROUP_CONCAT(DISTINCT fields ORDER BY fields), there
was a limitation that the DISTINCT fields had to be the same as ORDER BY
fields, owing to the fact that one single sorted tree was used for keeping
track of tuples, ordering and uniqueness. Fixed by introducing a second
structure to handle uniqueness so that the original structure has only to
order the result.
mysql-test/r/func_gconcat.result:
Bug#32798:
- Wrong test result turned correct after fix.
- Correct test result
mysql-test/t/func_gconcat.test:
Bug#32798: Test case
sql/item_sum.cc:
Bug#32798: Implementation of fix. Dead code removal.
- removed comment describing this bug
- replaced body of function group_concat_key_cmp_with_distinct
- removed function group_concat_key_cmp_with_distinct_and_order
- Added a Unique object to maintain uniqueness of values.
sql/item_sum.h:
Bug#32798: Declarations and comments.
The fix is a copy of Martin Friebe's suggestion.
added testing for no_appended which will be false if anything,
including the empty string is in result
mysql-test/r/func_gconcat.result:
test result
mysql-test/t/func_gconcat.test:
test case
sql/item_sum.cc:
added testing for no_appended which will be False if anything,
including the empty string is in result
Problem: GROUP_CONCAT(DISTINCT BIT_FIELD...) uses a tree to store keys;
which are constructed using a temporary table fields,
see Item_func_group_concat::setup().
As a) we don't store null bits in the tree where the bit fields store parts
of their data and b) there's no method to properly compare two table records
we've got problem.
Fix: convert BIT fields to INT in the temporary table used.
mysql-test/r/func_gconcat.result:
Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
- test result.
mysql-test/t/func_gconcat.test:
Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
- test case.
sql/item_sum.cc:
Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
- force the create_tmp_table() to convert BIT columns to INT
in order to be able to compare records containing BIT fields.
a temporary table.
The result string of the Item_func_group_concat wasn't initialized in the
copying constructor of the Item_func_group_concat class. This led to a
wrong charset of GROUP_CONCAT result when the select employs a temporary
table.
The copying constructor of the Item_func_group_concat class now correctly
initializes the charset of the result string.
mysql-test/t/func_gconcat.test:
Added a test case for the bug#29850: Wrong charset of the GROUP_CONCAT result
when the select employs a temporary table.
mysql-test/r/func_gconcat.result:
Added a test case for the bug#29850: Wrong charset of the GROUP_CONCAT result
when the select employs a temporary table.
sql/item_sum.cc:
Bug#29850: Wrong charset of GROUP_CONCAT result when the select employs
a temporary table.
The copying constructor of the Item_func_group_concat class now correctly
initializes the charset of the result string.
When using GROUP_CONCAT with ORDER BY, a tree is used for the sorting, as
opposed to normal nested loops join used when there is no ORDER BY.
The tree traversal that generates the result counts the lines that have been
cut down. (as they get cut down to the field's max_size)
But the check of that count was before the tree traversal, so no
warning was generated if the output is truncated.
Fixed by moving the check to after the tree traversal.
mysql-test/r/func_gconcat.result:
bug#28273: correct result
mysql-test/t/func_gconcat.test:
bug#28273: test case
sql/item_sum.cc:
bug#28273: the fix
Moved the code that outputs a warning to after temporary table (tree) is traversed.
When creating a temporary table the concise column type
of a string expression is decided based on its length:
- if its length is under 512 it is stored as either
varchar or char.
- otherwise it is stored as a BLOB.
There is a flag (convert_blob_length) to create_tmp_field
that, when >0 allows to force creation of a varchar if the
max blob length is under convert_blob_length.
However it must be verified that convert_blob_length
(settable through a SQL option in some cases) is
under the maximum that can be stored in a varchar column.
While performing that check for expressions in
create_tmp_field_from_item the max length of the blob was
used instead. This causes blob columns to be created in the
heap temp table used by GROUP_CONCAT (where blobs must not
be created in the temp table because of the constant
convert_blob_length that is passed to create_tmp_field() ).
And since these blob columns are not expected in that place
we get wrong results.
Fixed by checking that the value of the flag variable is
in the limits that fit into VARCHAR instead of the max length
of the blob column.
mysql-test/r/func_gconcat.result:
Bug #26815: test case
mysql-test/t/func_gconcat.test:
Bug #26815: test case
sql/item_sum.cc:
Bug #26815: wrong length was checked
sql/sql_select.cc:
Bug #26815: wrong length was checked
disabled warnings because their order is undeterministic
mysql-test/t/func_gconcat.test:
disabled warnings because their order is undeterministic
mysql-test/r/func_gconcat.result:
disabled warnings because their order is undeterministic
into mysql.com:/usr/home/bar/mysql-5.0.b23451
mysql-test/r/func_gconcat.result:
after merge fix
mysql-test/t/func_gconcat.test:
after merge fix
sql/item_sum.cc:
after merge fix
Problem: GROUP_CONCAT on a multi-byte column can truncate
in the middle of a multibyte character when applying
group_concat_max_len limit. It produces an invalid
multi-byte character in the result string.
The second, easier version - reusing old "warning_for_row" flag,
instead of introducing of "result_is_full" - which was
added in the previous commit.
mysql-test/r/func_gconcat.result:
Adding test case
mysql-test/t/func_gconcat.test:
Adding test case
sql/item_sum.cc:
Adding well_formed_len() call not to cut
in the middle of a multi-byte character.
into bodhi.local:/opt/local/work/mysql-5.0-runtime-merge
mysql-test/t/func_gconcat.test:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_update.cc:
Auto merged
mysql-test/r/view.result:
Manual merge.
mysql-test/t/view.test:
Manual merge.
into macbook.gmz:/Users/kgeorge/mysql/work/B14019-5.0-opt
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
sql/sql_base.cc:
Auto merged
mysql-test/r/group_by.result:
merge 4.1->5.0
mysql-test/t/group_by.test:
merge 4.1->5.0
When resolving unqualified name references MySQL was not
checking what is the item type for the reference. Thus
e.g a string literal item that has by convention a name
equal to its string value will also work as a reference to
a SELECT list item or a table field.
Fixed by allowing only Item_ref or Item_field to referenced by
(unqualified) name.
mysql-test/r/func_gconcat.result:
Bug #14019: group by converts literal string to column name
- removed undeterministic testcase : order by a constant
means no order.
mysql-test/r/group_by.result:
Bug #14019: group by converts literal string to column name
- test case
mysql-test/t/func_gconcat.test:
Bug #14019: group by converts literal string to column name
- removed undeterministic testcase : order by a constant
means no order.
mysql-test/t/group_by.test:
Bug #14019: group by converts literal string to column name
- test case
sql/sql_base.cc:
Bug #14019: group by converts literal string to column name
- resolve unqualified by name refs only for real references
into moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21354
mysql-test/t/func_gconcat.test:
Auto merged
sql/item_sum.cc:
Auto merged
mysql-test/r/ps.result:
Manual merge.
mysql-test/t/ps.test:
Manual merge.
statement.
The problem was that during statement re-execution if the result was
empty the old result could be returned for group functions.
The solution is to implement proper cleanup() method in group
functions.
mysql-test/r/ps.result:
Add result for bug#21354: (COUNT(*) = 1) not working in SELECT inside
prepared statement.
mysql-test/t/func_gconcat.test:
Add a comment that the test case is from bug#836.
mysql-test/t/ps.test:
Add test case for bug#21354: (COUNT(*) = 1) not working in SELECT inside
prepared statement.
sql/item_sum.cc:
Call clear() in Item_sum_count::cleanup().
sql/item_sum.h:
Add comments.
Add proper cleanup() methods.
Change Item_sum::no_rows_in_result() to call clear() instead of reset(),
as the latter also issues add(), and there is nothing to add when there
are no rows in result.
that returns the results of aggregation by GROUP_CONCAT.
The crash was due to an overflow happened for the field
sortoder->length.
The fix prevents this overflow exploiting the fact that the
value of sortoder->length cannot be greater than the value of
thd->variables.max_sort_length.
mysql-test/r/func_gconcat.result:
Added a test case for bug #22015.
mysql-test/t/func_gconcat.test:
Added a test case for bug #22015.
when calculating GROUP_CONCAT all blob fields are transformed
to varchar when making the temp table.
However a varchar has at max 2 bytes for length.
This fix makes the conversion only for blobs whose max length
is below that limit.
Otherwise blob field is created by make_string_field() call.
mysql-test/r/func_gconcat.result:
Bug#16712: group_concat returns odd srting insead of intended result
* testsuite for the bug
mysql-test/t/func_gconcat.test:
Bug#16712: group_concat returns odd srting insead of intended result
* testsuite for the bug
sql/item_sum.cc:
Bug#16712: group_concat returns odd srting insead of intended result
* force blob->varchar conversion for small enough blobs only
sql/sql_select.cc:
Bug#16712: group_concat returns odd srting insead of intended result
* force blob->varchar conversion for small enough blobs only
Remove duplicate test case for bug#14169
mysql-test/t/func_gconcat.test:
Remove duplicate test case for bug#14169
mysql-test/r/func_gconcat.result:
Remove duplicate test case for bug#14169
used
In a simple queries a result of the GROUP_CONCAT() function was always of
varchar type.
But if length of GROUP_CONCAT() result is greater than 512 chars and temporary
table is used during select then the result is converted to blob, due to
policy to not to store fields longer than 512 chars in tmp table as varchar
fields.
In order to provide consistent behaviour, result of GROUP_CONCAT() now
will always be converted to blob if it is longer than 512 chars.
Item_func_group_concat::field_type() is modified accordingly.
mysql-test/t/func_gconcat.test:
Added test case for bug#14169: type of group_concat() result changed to blob if tmp_table was used
mysql-test/r/func_gconcat.result:
Added test case for bug#14169: type of group_concat() result changed to blob if tmp_table was used
sql/unireg.h:
Added the CONVERT_IF_BIGGER_TO_BLOB constant
sql/sql_select.cc:
Fixed bug#14169: type of group_concat() result changed to blob if tmp_table was used
The unnamed constant 255 in the create_tmp_field() and create_tmp_field_from_item() functions now defined as the CONVERT_IF_BIGGER_TO_BLOB constant.
The create_tmp_field() function now converts the Item_sum string result to a blob field based on its char length.
sql/item_sum.h:
Fixed bug#14169: type of group_concat() result changed to blob if tmp_table was used
To the Item_func_group_concat calls added the member function field_type() which returns the BLOB or VAR_STRING type based on the items length.
sql/item_func.cc:
Fixed bug#14169: type of group_concat() result changed to blob if tmp_table was used
In the Item_func::tmp_table_field() function the unnamed constant 255 is changed to the CONVERT_IF_BIGGER_TO_BLOB constant.
The Item_func::tmp_table_field() function now measures the result length in chars rather than bytes when converting string result to a blob.
The GROUP_CONCAT uses its own temporary table. When ROLLUP is present
it creates the second copy of Item_func_group_concat. This copy receives the
same list of arguments that original group_concat does. When the copy is
set up the result_fields of functions from the argument list are reset to the
temporary table of this copy.
As a result of this action data from functions flow directly to the ROLLUP copy
and the original group_concat functions shows wrong result.
Since queries with COUNT(DISTINCT ...) use temporary tables to store
the results the COUNT function they are also affected by this bug.
The idea of the fix is to copy content of the result_field for the function
under GROUP_CONCAT/COUNT from the first temporary table to the second one,
rather than setting result_field to point to the second temporary table.
To achieve this goal force_copy_fields flag is added to Item_func_group_concat
and Item_sum_count_distinct classes. This flag is initialized to 0 and set to 1
into the make_unique() member function of both classes.
To the TMP_TABLE_PARAM structure is modified to include the similar flag as
well.
The create_tmp_table() function passes that flag to create_tmp_field().
When the flag is set the create_tmp_field() function will set result_field
as a source field and will not reset that result field to newly created
field for Item_func_result_field and its descendants. Due to this there
will be created copy func to copy data from old result_field to newly
created field.
mysql-test/t/func_gconcat.test:
Added test for bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
mysql-test/r/func_gconcat.result:
Added test for bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
sql/sql_table.cc:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added 0 as a last parameter to create_tmp_field() to force old behaviour.
sql/sql_select.cc:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added the flag 'make_copy_field' to create_tmp_field(), so that for Item_result_field descendants create_tmp_field() sets the item's result field as a source field and deny resetting that result field to a new value.
sql/sql_class.h:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added the flag 'force_copy_fields' to the structure TMP_TABLE_PARAM in order to make create_tmp_field() force the creation of 'copy_field' objects.
sql/mysql_priv.h:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added the bool parameter 'make_copy_field' to create_tmp_field().
sql/item_sum.cc:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added initialization of the force_copy_fields flag and passing it to create_tmp_table() through TMP_TBLE_PARAM in the Item_func_group_concat and Item_sum_count_distinct member functions.
sql/item_sum.h:
Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
Added the flag 'force_copy_fields' to the Item_func_group_concat and Item_sum_count_distinct classes.
into rurik.mysql.com:/home/igor/dev/mysql-5.0-2
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
a UNION in which case returns BLOB". The bug is not present anymore.
mysql-test/r/func_gconcat.result:
Bug#8568: test results
mysql-test/t/func_gconcat.test:
Add a test case for Bug#8568
allowed set functions aggregated in outer subqueries, allowed nested set functions.
mysql-test/r/func_gconcat.result:
Changed a query when fixing bug #12762.
mysql-test/r/subselect.result:
Added test cases for bug #12762.
Allowed set functions aggregated in outer subqueries. Allowed nested set functions.
mysql-test/t/func_gconcat.test:
Changed a query when fixing bug #12762.
mysql-test/t/subselect.test:
Added test cases for bug #12762.
Allowed set functions aggregated in outer subqueries. Allowed nested set functions.
sql/item.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
Changed Item_field::fix_fields to calculate attributes used when checking context conditions
for set functions.
Allowed alliases for set functions defined in outer subqueries.
sql/item.h:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
sql/item_cmpfunc.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
sql/item_func.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
sql/item_row.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
sql/item_strfunc.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added a parameter to Item::split_sum_func2 aliowing to defer splitting for set functions
aggregated in outer subquries.
sql/item_subselect.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries and a bitmap of nesting levels showing
in what subqueries a set function can be aggregated.
sql/item_sum.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added Item_sum methods to check context conditions imposed on set functions.
sql/item_sum.h:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Added Item_sum methods to check context conditions imposed on set functions.
sql/mysql_priv.h:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a type of bitmaps to be used for nesting constructs.
sql/sql_base.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries and a bitmap of nesting levels showing
in what subqueries a set function can be aggregated.
sql/sql_class.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a bitmap of nesting levels showing in what subqueries a set function can be aggregated.
sql/sql_class.h:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a bitmap of nesting levels showing in what subqueries a set function can be aggregated.
sql/sql_delete.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a bitmap of nesting levels showing in what subqueries a set function can be aggregated.
sql/sql_lex.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries and a bitmap of nesting levels showing
in what subqueries a set function can be aggregated.
sql/sql_lex.h:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries and a bitmap of nesting levels showing
in what subqueries a set function can be aggregated.
sql/sql_parse.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries.
sql/sql_prepare.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a bitmap of nesting levels showingin what subqueries a set function can be aggregated.
sql/sql_select.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries and a bitmap of nesting levels showing
in what subqueries a set function can be aggregated.
sql/sql_update.cc:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced a bitmap of nesting levels showing in what subqueries a set function can be aggregated.
sql/sql_yacc.yy:
Fixed bug #12762:
allowed set functions aggregated in outer subqueries, allowed nested set functions.
Introduced next levels for subqueries.
into rurik.mysql.com:/home/igor/dev/mysql-4.1-0
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
sql/item_sum.cc:
Auto merged
into mysql.com:/usr/home/bar/mysql-5.0
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
sql/item_sum.cc:
Auto merged
into mysql.com:/usr/home/bar/mysql-4.1.b12829
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
sql/item_sum.cc:
Auto merged
Added test cases for bug #12863.
item_sum.cc, item_sum.h:
Fixed bug #12863.
Added a flag to Item_func_group_concat set to FALSE after
concatenation of the first element of a group.
sql/item_sum.h:
Fixed bug #12863.
Added a flag to Item_func_group_concat set to FALSE after
concatenation of the first element of a group.
sql/item_sum.cc:
Fixed bug #12863.
Added a flag to Item_func_group_concat set to FALSE after
concatenation of the first element of a group.
mysql-test/t/func_gconcat.test:
Added test cases for bug #12863.
mysql-test/r/func_gconcat.result:
Added test cases for bug #12863.
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
client/mysqltest.c:
Auto merged
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/mysqltest.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/mysqltest.test:
Auto merged
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
Auto merged
ndb/src/kernel/error/ErrorReporter.cpp:
Auto merged
ndb/src/kernel/main.cpp:
Auto merged
ndb/src/kernel/vm/Emulator.cpp:
Auto merged
ndb/src/kernel/vm/Emulator.hpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
Auto merged
ndb/src/mgmsrv/Services.cpp:
Auto merged
ndb/tools/ndb_config.cpp:
Auto merged
ndb/tools/restore/consumer_restore.cpp:
Auto merged
mysql-test/t/openssl_1.test:
Manual merge
ndb/include/util/ndb_opts.h:
Manual merge
ndb/tools/Makefile.am:
Manual merge
ndb/tools/restore/restore_main.cpp:
Manual merge
Test case for bug #12859 group_concat in subquery cause incorrect not null.
mysql-test/r/func_gconcat.result:
Test case for bug #12859 group_concat in subquery cause incorrect not null.
mysql-test/t/func_gconcat.test:
Test case for bug #12859 group_concat in subquery cause incorrect not null.
into mysql.com:/home/jimw/my/mysql-5.0-clean
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/system_mysql_db_fix.test:
Auto merged
ndb/src/kernel/blocks/backup/BackupInit.cpp:
Auto merged
ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
Auto merged
ndb/src/kernel/blocks/dbacc/DbaccInit.cpp:
Auto merged
ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
Auto merged
ndb/src/kernel/blocks/dblqh/DblqhInit.cpp:
Auto merged
ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Auto merged
ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
Auto merged
ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
Auto merged
ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
Auto merged
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
Auto merged
ndb/src/kernel/vm/SimulatedBlock.cpp:
Auto merged
ndb/src/kernel/vm/SimulatedBlock.hpp:
Auto merged
ndb/src/mgmclient/CommandInterpreter.cpp:
Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_table.cc:
Auto merged
tests/mysql_client_test.c:
Auto merged
ndb/src/ndbapi/ndberror.c:
Resolve conflicts
sql/ha_innodb.cc:
Resolve conflicts
sql/item_strfunc.cc:
Resolve conflicts
Item_func_group_concat::fix_fields() set maybe_null flag to 0, and set it to
1 only if some of it's arguments may be null. When used in subquery in tmp
table created field which can't be null. When no data retireved result field
have to be set to null and error mentioned in bug report occurs. Also this
bug can occur if selecting from not null field in empty table.
Function group_concat now marked maybe_null from the very beginning not only
if some of it's argument may be null.
sql/item_sum.cc:
Fix bug #12861 client hang with group_concat insubquery FROM DUAL.
mysql-test/r/func_gconcat.result:
Test case for bug #12861 client hang with group_concat insubquery FROM DUAL.
mysql-test/t/func_gconcat.test:
Test case for bug #12861 client hang with group_concat insubquery FROM DUAL.
Cannot convert the charset of a GROUP_CONCAT result:
item_sum.cc:
"result" character set was not set into proper value.
func_gconcat.result, func_gconcat.test:
Fixing tests accordingly.
sql/item_sum.cc:
Bug #12829
Cannot convert the charset of a GROUP_CONCAT result:
"result" character set was not set into proper value.
mysql-test/t/func_gconcat.test:
Bug #12829
mysql-test/r/func_gconcat.result:
Bug #12829
Added a test case for bug #12095.
sql_class.h:
Fixed bug #12095: a join query with GROUP_CONCAT over a single row table.
Added a flag to the TMP_TABLE_PARAM class forcing to put constant
items generated after elimination of a single row table into temp table
in some cases (e.g. when GROUP_CONCAT is calculated over a single row
table).
bk ci sql/item_sum.cc
Fixed bug #12095: a join query with GROUP_CONCAT over a single row table.
If GROUP_CONCAT is calculated we always put its argument into a temp
table, even when the argument is a constant item.
sql_select.cc:
Fixed bug #12095: a join query with GROUP_CONCAT over one row table.
If temp table is used to calculate GROUP_CONCAT the argument should
be always put into this table, even when it is a constant item.
sql/sql_select.cc:
Fixed bug #12095: a join query with GROUP_CONCAT over one row table.
If temp table is used to calculate GROUP_CONCAT the argument should
be always put into this table, even when it is a constant item.
sql/sql_class.h:
Fixed bug #12095: a join query with GROUP_CONCAT over a single row table.
Added a flag to the TMP_TABLE_PARAM class forcing to put constant
items generated after elimination of a single row table into temp table
in some cases (e.g. when GROUP_CONCAT is calculated over a single row
table).
bk ci sql/item_sum.cc
Fixed bug #12095: a join query with GROUP_CONCAT over a single row table.
If GROUP_CONCAT is calculated we always put its argument into a temp
table, even when the argument is a constant item.
mysql-test/t/func_gconcat.test:
Added a test case for bug #12095.
mysql-test/r/func_gconcat.result:
Added a test case for bug #12095.
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
Adding test
item_sum.cc:
Adding a call for collation/charset aggregation,
to collect attributes from the arguments. The actual bug fix.
item_func.h, item_func.cc, item.h, item.cc:
- Removing collation aggrgation functions from Item_func class
in item.cc, and adding it as non-class functions in item.cc
to be able to reuse this code for group_concat.
- Adding replacement for these functions into Item_func class
as wrappers for moved functions, to minizize patch size,
sql/item.cc:
- Removing collation aggrgation functions from Item_func class
in item.cc, and adding it as non-class functions in item.cc
to be able to reuse this code for group_concat.
- Adding replacement for these functions into Item_func class
as wrappers for moved functions, to minizize patch size,
sql/item.h:
- Removing collation aggrgation functions from Item_func class
in item.cc, and adding it as non-class functions in item.cc
to be able to reuse this code for group_concat.
- Adding replacement for these functions into Item_func class
as wrappers for moved functions, to minizize patch size,
sql/item_func.cc:
- Removing collation aggrgation functions from Item_func class
in item.cc, and adding it as non-class functions in item.cc
to be able to reuse this code for group_concat.
- Adding replacement for these functions into Item_func class
as wrappers for moved functions, to minizize patch size,
sql/item_func.h:
- Removing collation aggrgation functions from Item_func class
in item.cc, and adding it as non-class functions in item.cc
to be able to reuse this code for group_concat.
- Adding replacement for these functions into Item_func class
as wrappers for moved functions, to minizize patch size,
sql/item_sum.cc:
Adding a call for collation/charset aggregation,
to collect attributes from the arguments. The actual bug fix.
mysql-test/t/func_gconcat.test:
Adding test
mysql-test/r/func_gconcat.result:
Adding test
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions
Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys
Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable
mysql-test/r/func_gconcat.result:
Move innodb specific test to innodb.test
Changed table name r2 -> t2
More test to see how ROLLUP was optimized
mysql-test/r/innodb.result:
Moved test here form func_gconcat
mysql-test/r/olap.result:
New test results after optimization
mysql-test/t/func_gconcat.test:
Move innodb specific test to innodb.test
Changed table name r2 -> t2
More test to see how ROLLUP was optimized
mysql-test/t/innodb.test:
Moved test here form func_gconcat
sql/field.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_berkeley.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_blackhole.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_heap.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_innodb.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_isam.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_isammrg.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_myisam.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_myisammrg.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/ha_ndbcluster.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/handler.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/hash_filo.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_cmpfunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_func.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
Ensure that 'null_value' is not accessed before val() is called
sql/item_geofunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_strfunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_subselect.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_sum.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_timefunc.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/item_uniq.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/log_event.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/mysql_priv.h:
Change key_map_full to not be const as we are giving it a proper value on startup
sql/mysqld.cc:
Move key_map variables here and initialize key_map_full properly
sql/opt_range.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/opt_range.h:
Fix that test_quick_select() works with any ammount of keys
sql/procedure.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/protocol.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/protocol_cursor.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/set_var.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_analyse.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_class.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_crypt.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_insert.cc:
Fixed that max_rows is ulong
sql/sql_list.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_map.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_olap.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_select.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
Fixed that ROLLUP don't have to always create a temporary table
Added new argument to remove_const() to make above possible
Fixed some errors that creapt up when we don't always do a temporary table for ROLLUP
sql/sql_string.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_table.cc:
Simple optimizations
Fixed wrong checking of build_table_path() in undef-ed code
sql/sql_udf.cc:
Move USE_PRAGMA_IMPLEMENTATION to proper place
sql/sql_yacc.yy:
removed extra {}