limit.
mysql-test/r/ps.result:
Post-merge fixes.
mysql-test/t/ps.test:
Post-merge fixes.
sql/share/errmsg.txt:
Add a new error message for max_prepared_stmt_count limit,
we can do it in 5.0
sql/sql_class.cc:
Post-merge fixes.
sql/sql_class.h:
Post-merge fixes.
sql/sql_prepare.cc:
Post-merge fixes.
into rurik.mysql.com:/home/igor/dev/mysql-5.1-0
mysql-test/r/func_time.result:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/sql_insert.cc:
Auto merged
mysql-test/r/innodb.result:
Manual merge
mysql-test/t/innodb.test:
Manual merge
Restarting scan after call to delete_row().
mysql-test/include/rpl_multi_engine3.inc:
Injector thread was not given enough time.
mysql-test/t/disabled.def:
Disabling some tests.
sql/log_event.cc:
Moving scan init functions for Delete_rows_log_event.
Restarting scan for each found row.
mysql-test/t/rpl_ndb_dd_partitions.test:
New BitKeeper file ``mysql-test/t/rpl_ndb_dd_partitions.test''
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.
mysql-test/r/innodb.result:
result added
mysql-test/t/innodb.test:
testcase
sql/ha_myisam.cc:
HA_CAN_RTREEKEYS added to ha_myisam
sql/handler.h:
HA_CAN_RTREEKEYS defined
sql/share/errmsg.txt:
error message added
sql/sql_table.cc:
check that the handler allows SPATIAL keys
CONNECTION_ID() was implemented as a constant Item, i.e. an instance of
Item_static_int_func class holding value computed at creation time.
Since Items are created on parsing, and trigger statements are parsed
on table open, the first connection to open a particular table would
effectively set its own CONNECTION_ID() inside trigger statements for
that table.
Re-implement CONNECTION_ID() as a class derived from Item_int_func, and
compute connection_id on every call to fix_fields().
mysql-test/r/trigger.result:
Add result for bug#16461.
mysql-test/t/trigger.test:
Add test case for bug#16461.
sql/item.cc:
Remove now unused class Item_static_int_func.
sql/item.h:
Remove now unused class Item_static_int_func.
sql/item_create.cc:
Use new implementation of CONNECTION_ID().
sql/item_func.cc:
Re-implement CONNECTION_ID() as Item_func_connection_id
(was Item_static_int_func). Set max_length to 10, as it was before.
Compute connection_id dynamically on every call to fix_fields().
sql/item_func.h:
Re-implement CONNECTION_ID() as Item_func_connection_id
(was Item_static_int_func).
better replicaiton test cleanup to ensure better test predictability
+ some ndb test cleanup
client/mysqltest.c:
increase save_master_pos timeout to 30 seconds for higher test predictability
mysql-test/extra/rpl_tests/rpl_ddl.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/extra/rpl_tests/rpl_row_UUID.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/r/rpl_ndb_dd_advance.result:
better replicaiton test cleanup to ensure better test predictability
mysql-test/r/rpl_ndb_sync.result:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/disabled.def:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/rpl_ndb_bank.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/rpl_ndb_basic.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/rpl_ndb_dd_advance.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/rpl_ndb_dd_basic.test:
better replicaiton test cleanup to ensure better test predictability
mysql-test/t/rpl_ndb_sync.test:
better replicaiton test cleanup to ensure better test predictability
a race between updating and checking Max_used_connections. This is done in
a loop until either disconnect finished or timeout expired. In a latter case
the test will fail.
mysql-test/r/status.result:
Update result to match changes in test case.
mysql-test/t/status.test:
Close extra conections in previous test.
In test for bug#15933 we have to wait for all disconnects to finish to avoid
a race between updating and checking Max_used_connections. This is done in
a loop until either disconnect finished or timeout expired. In a latter case
the test will fail.
Use con1, con2, con3 instead of con3, con4, con5.
- Add variable "have_dynamic_loading" and use it to check if the udf test should be run.
mysql-test/include/have_udf.inc:
Use variable "have_dynamic_loading" to to determine if there is support for udf's
mysql-test/r/have_udf.require:
Use variable "have_dynamic_loading" to to determine if there is support for udf's
mysql-test/t/disabled.def:
Remove udf from disabled
sql/mysql_priv.h:
Add have_dlopen variable
sql/mysqld.cc:
Add have_dlopen variable
sql/set_var.cc:
Add have_dlopen variable and name it "have_dynamic_loading" in "SHOW VARIABLES"
Fixed in parser. rpl_view gained no changes but rpl_view-slave.opt.
sql/sql_yacc.yy:
UPDATING option for create/alter view is added for tables_ok to finds the view's
TABLE_LIST.updating as true. FIXME: Regarding to UPDATING option `create view' should not have
any difference from `create table'.
mysql-test/t/rpl_view-slave.opt:
The option is needed to force slave executes tables_ok which must return OK in conditions of this tests (no table foo is used.
"upgrade" failed on windows, because of lower_case_table_name.
This fix changes letters to lower case, not to depend on OS.
Note, this change does not affect coverage of
Bug N 17142 "Crash if create with encoded name",
which the test war originally written for.
mysql-test/r/upgrade.result:
Changing "P" to "p" not to depend on lower_case_table_name
mysql-test/t/upgrade.test:
Changing "P" to "p" not to depend on lower_case_table_name
Fixed naming procedures for default partitioning and default subpartitioning
mysql-test/r/partition_pruning.result:
Fixed test cases for new naming of default subpartitions
mysql-test/r/partition_range.result:
New test case
mysql-test/t/partition_range.test:
New test case
sql/partition_info.cc:
Fixed naming procedures for default partitioning and default subpartitioning
sql/partition_info.h:
Fixed naming procedures for default partitioning and default subpartitioning
If the second or the third argument of a BETWEEN predicate was
a constant expression, like '2005.09.01' - INTERVAL 6 MONTH,
while the other two arguments were fields then the predicate
was evaluated incorrectly and the query returned a wrong
result set.
The bug was introduced in 5.0.17 when in the fix for 12612.
mysql-test/r/func_time.result:
Added a test case for bug #18618.
mysql-test/t/func_time.test:
Added a test case for bug #18618.
It was impossible to create some table names on Windows
(e.g. LPT1, AUX, COM1, etc).
Fixed to pad dangerous names with thee "at" signs
(e.g. LPT1@@@, AUX@@@, COM1@@@, and so on).
include/my_sys.h:
Adding new function declaration
mysys/my_access.c:
Adding new function check_if_legal_tablename().
It works almost like check_if_legal_filename(),
but accepts a table name without extension and path,
and does not check "CLOCK$".
sql/sql_table.cc:
Check if a dangerous table name and append @@@
strings/ctype-utf8.c:
Treat "@@@" sequence in a table name as a end-of-line.
mysql-test/r/ctype_filename.result:
New BitKeeper file ``mysql-test/r/ctype_filename.result''
mysql-test/t/ctype_filename.test:
New BitKeeper file ``mysql-test/t/ctype_filename.test''
mysql-test/r/innodb.result:
Fix for bug #14360: Date Between Interval Broken.
- test case.
mysql-test/t/innodb.test:
Fix for bug #14360: Date Between Interval Broken.
- test case.
sql/item_timefunc.cc:
Fix for bug #14360: Date Between Interval Broken.
- Item_date_add_interval::eq() introduced.
sql/item_timefunc.h:
Fix for bug #14360: Date Between Interval Broken.
- Item_date_add_interval::eq() introduced.
a misnamed function
... in the presence of a continue handler. The problem was that with a
handler, it continued to execute as if function existed and had set a
useful return value (which it hadn't).
The fix is to set a null return value and do an error return when a function
wasn't found.
mysql-test/r/sp.result:
Updated results for a new test case (BUG#18787).
mysql-test/t/sp.test:
New testcase for BUG#18787.
sql/item_func.cc:
Don't set "out of resources" error in Item_func_sp::execute() if no
result field is returned, it's simply wrong, it can be sometthing else,
like a function not found. Instead set null_value and return error.
Also, set "out of resources" when field creation fails in
Item_func_sp::sp_result_field() and Item_func_sp::tmp_table_field().
Open and seek to end of data_file after rename
Fix comment for when file does not need repair.
Set share->mapped_file to NULL always when it's been unmapped
Add test to see that file can be used after repair
mysql-test/r/csv.result:
Add more test to see that the table can be used after repair
mysql-test/t/csv.test:
Add more test to see that the table can be used after repair
storage/csv/ha_tina.cc:
Close share->data_file in before renaming in ha_tina::repair
Open and seek to end after rename
Fix comment for when file does not need repair.
Set share->mapped_file to NULL always when it's been unmapped