This fix is cancellation of ChangeSet
1.2329 05/07/12 08:35:30 reggie@linux.site +8 -0
Bug 7142 Show Fields from fails using Borland's dbExpress interface
The reason is we can't fix bug#7142 without
breaking of existing applications/APIs that worked fine with earlier 4.1
bug 7142 is fixed in 5.0
mysql-test/r/ps_1general.result:
Bug #12817 SHOW STATUS now blob fields
mysql-test/r/ps_2myisam.result:
Bug #12817 SHOW STATUS now blob fields
mysql-test/r/ps_3innodb.result:
Bug #12817 SHOW STATUS now blob fields
mysql-test/r/ps_4heap.result:
Bug #12817 SHOW STATUS now blob fields
mysql-test/r/ps_5merge.result:
Bug #12817 SHOW STATUS now blob fields
sql/item.cc:
Bug #12817 SHOW STATUS now blob fields
sql/sql_show.cc:
Bug #12817 SHOW STATUS now blob fields
tests/mysql_client_test.c:
Bug #12817 SHOW STATUS now blob fields
was used. (Bug #10724)
mysql-test/r/key_cache.result:
Updated results
mysql-test/r/ps_1general.result:
Updated results
mysql-test/r/user_var.result:
Add new results
mysql-test/r/variables.result:
Update results
mysql-test/t/user_var.test:
Add new regression test
sql/item_func.cc:
Don't set name explicitly in get_system_var(), let it get set by the
select_item: rule in sql_parse.yy or other callers of get_system_var().
sql/sql_parse.cc:
Set the name on the Item returned by get_system_var().
The problem here is that columns that have an especially long type
such as an enum type with many options would be longer than 40 chars
but the type column returned from show columns always was defined
as varchar(40).
This is fixed in 5.0 using info schema.
mysql-test/r/ps_1general.result:
update columns which will now be reported as blobs
mysql-test/r/ps_2myisam.result:
update columns which will now be reported as blobs
mysql-test/r/ps_3innodb.result:
update columns which will now be reported as blobs
mysql-test/r/ps_4heap.result:
update columns which will now be reported as blobs
mysql-test/r/ps_5merge.result:
update columns which will now be reported as blobs
sql/item.cc:
report a column as a particular blob type if it's size warrants
sql/sql_show.cc:
Add function to iterate over all the fields of a table and determine
the longest type name.
We call this function at the top of our show fields code. We pass in
either 40 or max_len whichever is longer to the ctor of
Item_empty_string.
tests/mysql_client_test.c:
update columns which will now be reported as blobs
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
sql/sql_class.cc:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
mysql-test/r/ps_1general.result:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
mysql-test/r/ps_2myisam.result:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
mysql-test/r/ps_3innodb.result:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
mysql-test/r/ps_4heap.result:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
mysql-test/r/ps_5merge.result:
Fixed bug #9899: erronious NOT_NULL flag for some attributes
in the EXPLAIN table.
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
by adding check for embedded server within tests and splitting some
tests into multiple test files.
mysql-test/mysql-test-run.sh:
Remove most of hardcoded list of tests to skip
mysql-test/r/ps_1general.result:
Update results
mysql-test/r/timezone2.result:
Update results
mysql-test/r/user_var.result:
Update results
mysql-test/r/variables.result:
Update results
mysql-test/t/mix_innodb_myisam_binlog.test:
Disable test with embedded server
mysql-test/t/mysql_protocols.test:
Disable test with embedded server
mysql-test/t/mysqlbinlog.test:
Disable test with embedded server
mysql-test/t/mysqlbinlog2.test:
Disable test with embedded server
mysql-test/t/mysqldump.test:
Disable test with embedded server
mysql-test/t/packet.test:
Disable test with embedded server
mysql-test/t/ps_1general.test:
Move parts of test to new ps_grant
mysql-test/t/rename.test:
Disable test with embedded server
mysql-test/t/show_check.test:
Disable test with embedded server
mysql-test/t/system_mysql_db_fix.test:
Disable test with embedded server
mysql-test/t/timezone2.test:
Move part of test to timezone_grant
mysql-test/t/user_var.test:
Move part of test to new user_var-binlog
mysql-test/t/variables.test:
Move part of test to rpl_variables
mysql-test/r/ps_1general.result:
Fix test case.
sql/handler.h:
Added federated to the list so that any beta users won't end up with a mismatch for table enum
corrected number of fields for --enable_metadata
sql/sql_union.cc
fixed a apparent typo in assert
client/mysqltest.c:
corrected number of fields for --enable_metadata
mysql-test/r/metadata.result:
corrected number of fields for --enable_metadata
mysql-test/r/ps_1general.result:
corrected number of fields for --enable_metadata
mysql-test/r/ps_2myisam.result:
corrected number of fields for --enable_metadata
mysql-test/r/ps_3innodb.result:
corrected number of fields for --enable_metadata
mysql-test/r/ps_4heap.result:
corrected number of fields for --enable_metadata
mysql-test/r/ps_5merge.result:
corrected number of fields for --enable_metadata
mysql-test/r/type_enum.result:
corrected number of fields for --enable_metadata
sql/sql_union.cc:
fixed a apparent typo in assert
Change string->float conversion to delay division as long as possible.
This gives us more exact integer->float conversion for numbers of type '123.45E+02' (Bug #7740)
client/mysql.cc:
Fix wront usage of charset (found during review of pushed code)
include/m_string.h:
Backported my_strtod() from 5.0
mysql-test/mysql-test-run.sh:
Run also mysql_client_test with --debug
mysql-test/r/ps_1general.result:
Safety fix (if mysql_client_test.test fails)
mysql-test/r/type_float.result:
More test
mysql-test/t/mysql_client_test.test:
Comments for what to do if this test fails
mysql-test/t/ps_1general.test:
Safety fix (if mysql_client_test.test fails)
mysql-test/t/type_float.test:
More test to better test new strtod() function
Test also bug #7740 (wrong comparsion between integer and float-in-integer-range)
sql/field.cc:
Backport my_strntod() from 5.0
sql/item.cc:
Backport my_strntod() from 5.0
sql/item.h:
Backport my_strntod() from 5.0
sql/item_func.h:
Backport my_strntod() from 5.0
sql/item_strfunc.cc:
Backport my_strntod() from 5.0
sql/item_sum.cc:
Backport my_strntod() from 5.0
sql/item_sum.h:
Backport my_strntod() from 5.0
sql/procedure.h:
Backport my_strntod() from 5.0
strings/ctype-simple.c:
Backport my_strntod() from 5.0
strings/ctype-ucs2.c:
Backport my_strntod() from 5.0
strings/strtod.c:
Backport my_strntod() from 5.0
Change conversion to delay division as long as possible.
This gives us more exact integer-> float conversion for numbers of type '123.45E+02'
not default_charset_into. It fixes the
problem that in some cases numbers where
treated as CHAR(N), not as BINARY(N), e.g.
wrong 'charsetnr' when sent to the client side.
2. IFNULL didn't aggregate argument charsets
and collations, so IFNULL(1,'a') produced
a CHAR(N). Now produces a BINARY(N).
3. SELECT PROCEDURE ANALIZE now returns
BINARY columns, which is much better than it worked
previously: CHAR with the default character set.
But in the future it's worth to fix the fields
'Field_name' and 'Optimal_fieldtype' to use UTF8,
and 'Min_value' and 'Max_value' to inherit their charsets
from the original items. But it is not important,
and BINARY(N) is OK for now.
4. Tests were fixed accordingly. No new tests were
made, as the old onces cover everything.
mysql-test/r/analyse.result:
SELECT PROCEDURE ANALIZE now returns
BINARY columns, which is much better than it worked
previously: CHAR with the default character set.
But in the future it's worth to fix the fields
'Field_name' and 'Optimal_fieldtype' to use UTF8,
and 'Min_value' and 'Max_value' to inherit their charsets
from the original items. But it is not important,
and BINARY(N) is OK for now.
mysql-test/r/case.result:
Test fix according to the changes
mysql-test/r/metadata.result:
Test fix according to the changes
mysql-test/r/ps_1general.result:
Test fix according to the changes
mysql-test/r/ps_2myisam.result:
Test fix according to the changes
mysql-test/r/ps_3innodb.result:
Test fix according to the changes
mysql-test/r/ps_4heap.result:
Test fix according to the changes
mysql-test/r/ps_5merge.result:
Test fix according to the changes
mysql-test/r/ps_6bdb.result:
Test fix according to the changes
mysql-test/r/ps_7ndb.result:
Test fix according to the changes
mysql-test/r/union.result:
Test fix according to the changes
sql/item.cc:
Item is now BINARY by default
sql/item_cmpfunc.cc:
IFNULL now collects arguments collations/charsets
like other functions do.
mysql-test/r/grant2.result:
new test case
mysql-test/r/variables.result:
don't fail w/o innodb
mysql-test/t/grant2.test:
new test case
mysql-test/t/multi_update.test:
don't fail w/o innodb
mysql-test/t/variables.test:
don't fail w/o innodb
sql/sql_acl.cc:
cleanup
client/mysqldump.c:
Merge with 4.0 (and reordering of options)
client/mysqltest.c:
Added DB as a user variable
myisam/mi_check.c:
Trivial cleanup
mysql-test/r/grant.result:
Move test to be in same order as in 4.0
mysql-test/r/mix_innodb_myisam_binlog.result:
Updated results
mysql-test/r/ps_1general.result:
Updated tests to work after privilege fixes
mysql-test/r/timezone3.result:
Updated results to 4.1
mysql-test/t/ps_1general.test:
Updated tests to work after privilege fixes
sql-common/my_time.c:
Applied sub-second patch from 4.0
sql/sql_acl.cc:
More debugging
names with ident. tables fr. diff. schemata": revise all uses of
Item_field and make them prepared-statements friendly when necessary.
mysql-test/r/ps.result:
Test results fixed: the test case for Bug#6050
mysql-test/r/ps_1general.result:
Test results fixed: in prepared statements we expand '*' to a list
of fully qualified fields (db.table.column).
mysql-test/t/ps.test:
A test for Bug#6050 "EXECUTE stmt reports ambiguous fieldnames with
ident. tables fr. diff. schemata"
sql/item.cc:
Revise all Item_field constructors: we need to make sure that no Item_field
object points to unaccessible memory in prepared statements.
sql/item.h:
Revise all Item_field constructors: we need to make sure that no Item_field
object points to unaccessible memory in prepared statements.
sql/sql_base.cc:
Item_field use changed to be prepared statements friendly.
sql/sql_class.h:
New check of Item_arena state.
sql/sql_union.cc:
Fixing the problem with name resolving in UNION and prepared statements:
In case of SELECT a, b, c FROM t1 UNION SELECT a, b, c FROM t2 the list of
selected items is represented as a List<Item_field>, where each
Item_field points to a field of temporary table.
But the temporary table is created anew on each execution of the prepared
statement. So on each subsequent execution we should reset Item_field
items to point to fields from freshly-created temporary table.
sql/table.h:
Comment TABLE member.
(Until mysqltest will support replace_result and replace_column on metadata).
mysql-test/r/ps_1general.result:
Disabled part of test behaving differently on different builds.
(Until mysqltest will support replace_result and replace_column on metadata).
mysql-test/t/ps_1general.test:
Disabled part of test behaving differently on different builds.
(Until mysqltest will support replace_result and replace_column on metadata).
if possible"
- many new test cases
- more and improved comments
New files: t/ps_7ndb.test test suite for NDB tables
r/ps_7ndb.result expected results
include/ps_conv.inc conversion test cases
+ review comments and fixes.
mysql-test/include/ps_create.inc:
Rename of t_many_col_types -> t9
mysql-test/include/ps_modify.inc:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Rename: t_many_col_types -> t9
Cleanups and comments.
New test cases (derived from client_test.c)
mysql-test/include/ps_modify1.inc:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Rename: t_many_col_types -> t9
Cleanups and comments.
New test cases (derived from client_test.c)
mysql-test/include/ps_query.inc:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Rename: t_many_col_types -> t9
Cleanups and comments.
New test cases (derived from client_test.c)
mysql-test/include/ps_renew.inc:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Rename: t_many_col_types -> t9
mysql-test/r/ps_1general.result:
Results updated.
mysql-test/r/ps_2myisam.result:
Resutls updated.
mysql-test/r/ps_3innodb.result:
Results updated.
mysql-test/r/ps_4heap.result:
Results updated.
mysql-test/r/ps_5merge.result:
Results updated.
mysql-test/r/ps_6bdb.result:
Results updated.
mysql-test/t/ps_1general.test:
WL#1856 "Conversion of client_test.c tests cases to mysqltest if
possible": new test cases added.
mysql-test/t/ps_2myisam.test:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Call of file include/ps_conv.inc (with new test cases) and
fulltext test case added.
mysql-test/t/ps_3innodb.test:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Call of file include/ps_conv.inc (with new test cases) added.
mysql-test/t/ps_4heap.test:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Call of file include/ps_conv.inc (with new test cases) added.
mysql-test/t/ps_5merge.test:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible
Call of file include/ps_conv.inc (with new test cases) added.
mysql-test/t/ps_6bdb.test:
WL#1856 Conversion of client_test.c tests cases to mysqltest if possible.
Call of file include/ps_conv.inc (with new test cases) added.
Use 'mysqltest' as test database instead of test_$1 or test1,test2 to not accidently delete an important database
Safety fix for mailformed MERGE files
Build-tools/mysql-copyright:
Print correct file name in case of errors
Fixed indentation
include/config-win.h:
Removed unnecessary #ifdef
myisammrg/myrg_open.c:
Don't give a core if merge file contains INSERT_METHOD first (not legal but better safe than sorry)
Don't set struct variables to zero that are already zero
Indentation fixes
mysql-test/r/create.result:
Use 'mysqltest' as test database
mysql-test/r/ndb_basic.result:
Use 'mysqltest' as test database
mysql-test/r/ndb_blob.result:
Use 'mysqltest' as test database
mysql-test/r/ndb_transaction.result:
Use 'mysqltest' as test database
mysql-test/r/ps_1general.result:
Use 'mysqltest' as test database
mysql-test/r/rpl_charset.result:
Use 'mysqltest' as test database
mysql-test/r/rpl_delete_all.result:
Use 'mysqltest' as test database
mysql-test/r/show_check.result:
Use 'mysqltest' as test database
mysql-test/t/create.test:
Use 'mysqltest' as test database
mysql-test/t/ndb_basic.test:
Use 'mysqltest' as test database
mysql-test/t/ndb_blob.test:
Use 'mysqltest' as test database
mysql-test/t/ndb_transaction.test:
Use 'mysqltest' as test database
mysql-test/t/ps_1general.test:
Use 'mysqltest' as test database
mysql-test/t/rpl_charset.test:
Use 'mysqltest' as test database
mysql-test/t/rpl_delete_all.test:
Use 'mysqltest' as test database
mysql-test/t/show_check.test:
Use 'mysqltest' as test database
sql/field.h:
Mark functions that should be deleted as soon as we have a new prototype for store(longlong)
sql/lock.cc:
Indentation fix
sql/sql_base.cc:
Better comment.
Break find_item_in_list in case of perfect match
sql/sql_prepare.cc:
Simple optimization
sql/sql_select.cc:
Portability fix