This is needed because in some cases range optimization is performed twice and added
NOT NULL item must have correct const_table_map() value.
mysql-test/r/select.result:
Testcase for BUG#11700
mysql-test/t/select.test:
Testcase for BUG#11700
Add extra check to delete [] to ensure we are not deleting not allocated data
sql/sql_select.cc:
Optimization
Add extra check to delete [] to ensure we are not deleting not allocated data
Added a test case for bug #11414.
sql_select.cc:
Fixed bug #11414: crash on Windows with some simple
GROUP BY queries.
It happened to an allocation of an array containing
0 Copy_field elements in setup_copy_fields.
The bug had been already fixed in 5.0.
sql/sql_select.cc:
Fixed bug #11414: crash on Windows with some simple
GROUP BY queries.
It happened to an allocation of an array containing
0 Copy_field elements in setup_copy_fields.
The bug had been already fixed in 5.0.
mysql-test/t/group_by.test:
Added a test case for bug #11414.
mysql-test/r/group_by.result:
Added a test case for bug #11414.
Added a test case for bug #10124.
sql_select.h, item_subselect.cc, sql_select.cc:
Fixed bug #10124.
The copy method of the store_key classes can return
STORE_KEY_OK=0, STORE_KEY_FATAL=1, STORE_KEY_CONV=2 now.
field.cc:
Fixed bug #10124.
When ussuing a warning the store methods return 2 instead of 1 now.
sql/field.cc:
Fixed bug #10124.
When ussuing a warning the store methods return 2 instead of 1 now.
sql/sql_select.cc:
Fixed bug #10124.
The copy method of the store_key classes can return
STORE_KEY_OK=0, STORE_KEY_FATAL=1, STORE_KEY_CONV=2 now.
sql/item_subselect.cc:
Fixed bug #10124.
The copy method of the store_key classes can return
STORE_KEY_OK=0, STORE_KEY_FATAL=1, STORE_KEY_CONV=2 now.
sql/sql_select.h:
Fixed bug #10124.
The copy method of the store_key classes can return
STORE_KEY_OK=0, STORE_KEY_FATAL=1, STORE_KEY_CONV=2 now.
mysql-test/t/func_str.test:
Added a test case for bug #10124.
mysql-test/r/func_str.result:
Added a test case for bug #10124.
Fixed wrong allocation that could cause buffer overrun when using join cache
myisam/mi_open.c:
Fixed indentation
mysql-test/r/lowercase_table2.result:
Drop tables and databases used in the test
mysql-test/t/lowercase_table2.test:
Drop tables and databases used in the test
mysys/my_fopen.c:
Cleanup of comments and parameter names
Simple optimization
Removed compiler warnings
sql/field.cc:
Fixed wrong allocation that could cause buffer overrun
sql/mysqld.cc:
Removed not needed code
sql/set_var.cc:
Simply code
sql/sql_select.cc:
Use int2store/int2korr to store length of cached VARCHAR fields
(Not dependent on type and faster code as we avoid one possible call)
Added a test case for bug #8614.
sql_select.cc:
Fixed bug #8614.
SELECT DISTINCT ... GROUP BY 'const' must be equivalent to
SELECT ... GROUP BY 'const'.
sql/sql_select.cc:
Fixed bug #8614.
SELECT DISTINCT ... GROUP BY 'const' must be equivalent to
SELECT ... GROUP BY 'const'.
mysql-test/t/group_by.test:
Added a test case for bug #8614.
mysql-test/r/group_by.result:
Added a test case for bug #8614.
Added a test case for bug #11167.
sql_select.cc:
Fixed bug #11167.
In 4.1 char/varchar fields are limited by 255 characters in
length that make them longer than 255 bytes in size for such
character sets as UTF8. The functions store_record_in_cache
and read_cached_records did not take into account this
Moreover the code did not take into account that the size
of the varchar fields in 5.0 can be up to 65535 bytes
sql/sql_select.cc:
Fixed bug #11167.
In 4.1 char/varchar fields are limited by 255 characters in
length that make them longer than 255 bytes in size for such
character sets as UTF8. The functions store_record_in_cache
and read_cached_records did not take into account this
Moreover the code did not take into account that the size
of the varchar fields in 5.0 can be up to 65535 bytes
mysql-test/r/ctype_utf8.result:
Added a test case for bug #11167.
mysql-test/t/ctype_utf8.test:
Added a test case for bug #11167.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Fixed bug #11088: a crash for queries with GROUP BY a BLOB column
+ COUNT(DISTINCT...) due to an attempt to allocate a too large
buffer for the BLOB field.
Now the size of the buffer is limited by max_sort_length.
group_by.test, group_by.result:
Added a test case for bug #11088.
mysql-test/r/group_by.result:
Added a test case for bug #11088.
mysql-test/t/group_by.test:
Added a test case for bug #11088.
sql/item.h:
Fixed bug #11088: a crash for queries with GROUP BY a BLOB column
+ COUNT(DISTINCT...) due to an attempt to allocate a too large
buffer for the BLOB fields.
Now the size of the buffer is limited by max_sort_length.
sql/item_buff.cc:
Fixed bug #11088: a crash for queries with GROUP BY a BLOB column
+ COUNT(DISTINCT...) due to an attempt to allocate a too large
buffer for the BLOB fields.
Now the size of the buffer is limited by max_sort_length.
sql/sql_select.cc:
Fixed bug #11088: a crash for queries with GROUP BY a BLOB column
+ COUNT(DISTINCT...) due to an attempt to allocate a too large
buffer for the BLOB fields.
Now the size of the buffer is limited by max_sort_length.
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 {}
sql/ha_heap.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/examples/ha_archive.cc:
Auto merged
sql/examples/ha_example.cc:
Auto merged
sql/examples/ha_tina.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_repl.cc:
SCCS merged
Set #pragma implementation" earlier
Many files:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
client/sql_string.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
mysys/raid.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/field.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_berkeley.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_blackhole.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_heap.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_innodb.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_isam.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_isammrg.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_myisam.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_myisammrg.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/ha_ndbcluster.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/handler.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/hash_filo.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_cmpfunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_func.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_geofunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_strfunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_subselect.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_sum.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_timefunc.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/item_uniq.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/log_event.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/opt_range.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/procedure.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/protocol.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/protocol_cursor.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/set_var.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_analyse.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_class.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_crypt.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_list.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_map.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_olap.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_archive.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_select.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_string.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/sql_udf.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_example.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/examples/ha_tina.cc:
Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
sql/tztime.cc:
Set #pragma implementation" earlier
client/mysqladmin.cc:
gcc 4.0 fix
sql/examples/ha_archive.cc:
Bunch of little cleanups from -Wall and gcc 4.0 fixes
sql/examples/ha_example.cc:
Noticed that the error call was not quite right.
sql/examples/ha_tina.cc:
Bunch of cleanups (many of which were quite dumb of me... and I have no earthly idea how they missed everyone's notice).
sql/ha_heap.cc:
Removed unused variable (-Wall find)
sql/item_subselect.cc:
Removed unused label.
sql/mysqld.cc:
Cleanup of unused function and gcc 4.0 bit.
sql/opt_range.h:
Cleanup for gcc 4.0
sql/repl_failsafe.cc:
Cleanup for gcc 4.0
sql/slave.cc:
Cleanup for gcc 4.0
sql/sql_acl.cc:
Cleanup for gcc 4.0
sql/sql_insert.cc:
Cleanedup for gcc 4.0
sql/sql_parse.cc:
Cleanedup for gcc 4.0
sql/sql_repl.cc:
Removed unused variable
sql/sql_select.cc:
Cleanedup for gcc 4.0
Added test cases for bug #7894.
sql_select.cc:
Fixed bug #7894: GROUP BY queries with ROLLUP returned
wrong results for expressions containing group by columns.
The fix ensured correct results by replacement of all
occurrences of group by fields in non-aggregate expressions
for corresponding ref objects and preventing creation of
fields in temporary tables for expression containing group
by fields.
sql/sql_select.cc:
Fixed bug #7894: GROUP BY queries with ROLLUP returned
wrong results for expressions containing group by columns.
The fix ensured correct results by replacement of all
occurrences of group by fields in non-aggregate expressions
for corresponding ref objects and preventing creation of
fields in temporary tables for expression containing group
by fields.
mysql-test/t/olap.test:
Added test cases for bug #7894.
mysql-test/r/olap.result:
Added test cases for bug #7894.
Added test cases for bug #7914.
sql_select.cc:
Fixed bug #7914: rollup over expresssions such as sum(a)+1.
sql/sql_select.cc:
Fixed bug #7914: rollup over expresssions such as sum(a)+1.
mysql-test/t/olap.test:
Added test cases for bug #7914.
mysql-test/r/olap.result:
Added test cases for bug #7914.
Reset old error if tmp table was successfully created.
Test data is large and can be found in bug report along with test query.
sql/sql_select.cc:
Fix bug #9703
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
mysys/default.c:
Cleanup:
- Just test once for recursion level
- Don't test explicitely for \r or \n as my_isspace() already does that
sql/sql_insert.cc:
Fix argument
sql/sql_select.cc:
Fixed indentation
added comment
Fixed bug #9681.
The bug happened with queries using derived tables specified by
a SELECT with ROLLUP, such as:
SELECT * FROM (SELECT a, SUM(a) FROM t1 GROUP BY a WITH ROLLUP) t2,
if column a of table t1 is declared as NOT NULL.
This was to the fact that the first column of the temporary table
created to contain the derived table erroneously inherited the NOT NULL
attribute from column a.
olap.result, olap.test:
Added a test case for bug #9681.
mysql-test/t/olap.test:
Added a test case for bug #9681.
mysql-test/r/olap.result:
Added a test case for bug #9681.
sql/sql_select.cc:
Fixed bug #9681.
The bug happened with queries using derived tables specified by
a SELECT with ROLLUP, such as:
SELECT * FROM (SELECT a, SUM(a) FROM t1 GROUP BY a WITH ROLLUP) t2,
if column a of table t1 is declared as NOT NULL.
This was to the fact that the first column of the temporary table
created to contain the derived table erroneously inherited the NOT NULL
attribute from column a.
Don't produce data truncation warnings from within cp_buffer_from_ref(). This function
is only used to make index search tuples and data truncation that occurs here has no
relation with truncated values being saved into tables.
mysql-test/r/update.result:
Testcase for BUG#9103
mysql-test/t/update.test:
Testcase for BUG#9103
sql/opt_range.cc:
cp_buffer_from_ref now has THD* parameter
sql/sql_select.h:
cp_buffer_from_ref now has THD* parameter
"Early NULL-values filtering for ref access" (attempt2+post-review fixes)
1. update_ref_and_keys() accumulates info about null-rejecting
predicates in in KEY_FIELD::null_rejecting, add_key_part saves
these to KEYUSE.
2. create_ref_for_key copies them to TABLE_REF.
3. add_not_null_conds adds "x IS NOT NULL" to join_tab->select_cond of
appropiate JOIN_TAB members.
Includes code cleanups:
* add_key_field() params: s/COND/Item_func/ (as only Item_funcs are
passed to it)
* add_key_fields() params: JOIN_TAB *stat removed (wasn't used)
sql/sql_select.cc:
Fix for BUG#8877: Implementation of
"Early NULL-values filtering for ref access"
1. update_ref_and_keys() accumulates info about null-rejecting
predicates in in KEY_FIELD::null_rejecting, add_key_part saves
these to KEYUSE.
2. create_ref_for_key copies them to TABLE_REF.
3. add_not_null_conds adds "x IS NOT NULL" to join_tab->select_cond
of appropiate JOIN_TAB members.
Includes code cleanups:
* add_key_field() params: s/COND/Item_func/ (as only Item_funcs are
passed to it)
* add_key_fields() params: JOIN_TAB *stat removed (wasn't used)
sql/sql_select.h:
Fix for BUG#8877: Implementation of
"Early NULL-values filtering for ref access" (attempt2)
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/type_blob.result:
Auto merged
mysql-test/r/type_float.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/r/variables.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/grant2.test:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
mysql-test/t/select.test:
Auto merged
mysql-test/t/show_check.test:
Auto merged
mysql-test/t/type_float.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/mysql-test-run.sh:
Merge changes
mysql-test/t/ps_1general.test:
Merge changes
up a couple of tests and adjusting the output of others. Exposes two
bugs (9472 and 9508).
BitKeeper/deleted/.del-drop_temp_table.result.es~bc4cfb1ee1257458:
Delete: mysql-test/r/drop_temp_table.result.es
BitKeeper/deleted/.del-insert_select.result.es~ae7eb9891d6c07c4:
Delete: mysql-test/r/insert_select.result.es
BitKeeper/deleted/.del-myisam-blob.result.es~d498dae7d9f1a6d4:
Delete: mysql-test/r/myisam-blob.result.es
BitKeeper/deleted/.del-packet.result.es~6e71c3b634806185:
Delete: mysql-test/r/packet.result.es
BitKeeper/deleted/.del-query_cache.result.es~246ad731a517d9ab:
Delete: mysql-test/r/query_cache.result.es
BitKeeper/deleted/.del-select.result.es~240635f6a3f1a079:
Delete: mysql-test/r/select.result.es
BitKeeper/deleted/.del-type_blob.result.es~a4a0d4454b2d0218:
Delete: mysql-test/r/type_blob.result.es
BitKeeper/deleted/.del-type_float.result.es~a5533e4118eadc04:
Delete: mysql-test/r/type_float.result.es
BitKeeper/deleted/.del-type_ranges.result.es~bb77517f4c9dc978:
Delete: mysql-test/r/type_ranges.result.es
mysql-test/mysql-test-run.sh:
Remove support for special result extension -- bad idea!
mysql-test/t/ps_1general.test:
Explain --replace_result
mysql-test/r/insert_select.result:
Update results
mysql-test/r/select.result:
Update results
mysql-test/r/type_blob.result:
Update results
mysql-test/r/type_float.result:
Update results
mysql-test/r/type_ranges.result:
Update results
mysql-test/t/drop_temp_table.test:
Skip this test with embedded server
mysql-test/t/insert_select.test:
Move binlog test to new file
mysql-test/t/select.test:
Replace grants column from 'show full columns'
mysql-test/t/type_blob.test:
Replace grants column from 'show full columns'
mysql-test/t/type_float.test:
Replace grants column from 'show full columns'
mysql-test/t/type_ranges.test:
Replace grants column from 'show full columns'
sql/sql_select.cc:
Fix conditional around query_cache_abort() call.
Make test_if_skip_sort_order() rebuild tab->ref if it decides to use an index
different from the index join optimizer has choosen.
mysql-test/r/group_by.result:
Testcase for BUG#9213
mysql-test/t/group_by.test:
Testcase for BUG#9213
sql/table.h:
Added comments about TABLE::used_keys
sql/sql_select.cc:
A fix (bug #9401: type_timestamp segfaults mysqld).
1. create_tmp_field_from_field() is modified to take 'Item_ref *item' and 'char *name'
instead of 'bool modify_item' and 'Item *item'.
2. For Item_sum_min/max we should never modify item, so NULL is
passed as item to the create_tmp_field_from_field().
mysql-test/r/metadata.result:
Auto merged
sql/item.h:
Auto merged
sql/item_func.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/union.result:
SCCS merged
mysql-test/t/union.test:
SCCS merged
mysql-test/r/func_group.result:
new result
mysql-test/r/metadata.result:
new result
test of metadata of variables, unions and derived tables
mysql-test/r/union.result:
new results
test of union of enum
mysql-test/t/metadata.test:
test of metadata of variables, unions and derived tables
mysql-test/t/union.test:
test of union of enum
sql/field.cc:
Field type merging rules added
Fixed table name/alias returting for field made from temporary tables
sql/field.h:
removed unned field type reporting
sql/item.cc:
fixed bug in NEW_DATE type field creartion
replaced mechanism of merging types of UNION
sql/item.h:
replaced mechanism of merging types of UNION
sql/item_func.h:
new item type to make correct field type detection possible
sql/item_subselect.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_derived.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_lex.h:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_parse.cc:
made function for enum/set pack length calculation
sql/sql_prepare.cc:
added table name parameter to prepare() to show right table alias for derived tables
sql/sql_select.cc:
new temporary table field creation by Item_type_holder
fixed table alias for temporary table
sql/sql_union.cc:
added table name parameter to prepare() to show right table alias for derived tables
Added a test case for bug #8617.
sql_select.cc:
Fixed bug #8617.
Queries with ROLLUP and LIMIT n returned more than n rows
if SQL_CALC_FOUND_ROWS was used.
sql/sql_select.cc:
Fixed bug #8617.
Queries with ROLLUP and LIMIT n returned more than n rows
if SQL_CALC_FOUND_ROWS was used.
mysql-test/t/olap.test:
Added a test case for bug #8617.
Added a test for bug #8615.
sql_select.cc:
Fixed bug #8615.
This fix only removed the cause of the reported crash.
It does not resolve other problems of rollup queries
with DISTINCT. They were fixed in the previous patch
for bug 8616.
sql/sql_select.cc:
Fixed bug #8615.
This fix only removed the cause of the reported crash.
It does not resolve other problems of rollup queries
with DISTINCT. They were fixed in the previous patch
for bug 8616.
mysql-test/t/olap.test:
Added a test for bug #8615.
mysql-test/r/olap.result:
Added a test for bug #8615.
Added a test case for bug #8616.
item.h:
Fixed bug #8616.
Added class Item_null_result used in rollup processing.
sql_select.h, sql_select.cc:
Fixed bug #8616.
Added JOIN::rollup_write_data to cover rollup queries
with DISTINCT. Modified other rollup methods.
sql/sql_select.cc:
Fixed bug #8616.
Added JOIN::rollup_write_data to cover rollup queries
with DISTINCT. Modified other rollup methods.
sql/sql_select.h:
Fixed bug #8616.
Added JOIN::rollup_write_data to cover rollup queries
with DISTINCT. Modified other rollup methods.
sql/item.h:
Fixed bug #8616.
Added class Item_null_result used in rollup processing.
mysql-test/t/olap.test:
Added a test case for bug #8616.
mysql-test/r/olap.result:
Added a test case for bug #8616.
so that extra slashes are handled in tmpdir. (Bug #8497)
sql/ha_heap.cc:
use constants instead of magic integers on fn_format() calls
sql/sql_select.cc:
Construct filename for temporary tables using fn_format() to get consistent
filenames.
mysql-test/t/temp_table.test:
Add new regression test
mysql-test/r/temp_table.result:
Add new test results