into ramayana.hindu.god:/home/tsmith/m/bk/bugteam/mrg/51
mysql-test/suite/rpl/r/rpl_packet.result:
Auto merged
mysql-test/suite/rpl/t/rpl_packet.test:
Auto merged
mysql-test/suite/rpl/t/disabled.def:
SCCS merged
into amd64.(none):/src/rel_clean_up/my51-rel_clean_up
mysql-test/r/type_decimal.result:
Auto merged
mysql-test/t/type_decimal.test:
Auto merged
sql/my_decimal.h:
Auto merged
Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
Bug#36034 - Test parts.part_supported_sql_func_<eng> fails on Windows
Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
Changeset to fix multiple 5.1.24-rc build bugs on Windows platforms.
Many of these bugs had the same root causes.
mysql-test/mysql-test-run.pl:
Bug#36034 - Test parts.partition_supported_sql_func_<eng> fails on Windows
Kent suggested these changes to ensure all contents of mysql-test/std_data are copied to std_data_ln on Windows (no symlinks)
mysql-test/suite/funcs_1/datadict/processlist_priv.inc:
Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
mysql-test/suite/funcs_1/datadict/processlist_val.inc:
Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
-reran .result file to account for change in --replace_column calls
mysql-test/suite/funcs_1/r/processlist_priv_ps.result:
Bug#36032 - Test funcs_1.processlist_priv_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
-reran .result file to account for change in --replace_column calls
mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
Reran .result file to account for changes to --replace_column clauses
mysql-test/suite/funcs_1/r/processlist_val_ps.result:
Bug#36033 - Test funcs_1.processlist_val_ps fails on Windows
Altered .inc file to include HOST column in the --replace_column clauses.
Windows tests were failing due to use of localhost as localhost:<port> rather than just localhost.
Reran .result file to account for changes to --replace_column clauses
mysql-test/suite/parts/inc/partition_layout_check1.inc:
Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
Added replace_result clause to account for Windows' use of '\r' vs. '\n'
This difference was causing failures on Windows.
Also, mleich added some changes to remove some -ls clauses that weren't necessary
mysql-test/suite/parts/inc/partition_layout_check2.inc:
Bug#36036 - Test parts.partition_alter1_<eng> fails on Windows
Bug#36037 - Test parts.partition_alter2_<eng> fails on Windows
Bug#36038 - Test parts.partition_basic_<engine> failing on Windows
Bug#36039 - Test parts.partition_engine_<eng> fails on Windows
Bug#36040 - Test parts.partition_syntax_<eng> fails on Windows
Added replace_result clause to account for Windows' use of '\r' vs. '\n'
This difference was causing failures on Windows.
Also, mleich added some changes to remove some -ls clauses that weren't necessary
mysql-test/suite/parts/r/partition_basic_symlink_myisam.result:
changes by mleich to remove unneeded use of -ls clause in .result file
These clauses were removed from partition_layout_check1.inc and partition_layout_check2.inc
for ENGINE=MRG_MYISAM (should be optimized out).
Before WL#3281 MERGE engine had the HA_NOT_EXACT_COUNT flag
unset, and it worked with COUNT optimization as desired.
After the removal of the HA_NOT_EXACT_COUNT flag neither
HA_STATS_RECORDS_IS_EXACT (opposite to former HA_NOT_EXACT_COUNT
flag) nor modern HA_HAS_RECORDS flag were not added to MERGE
table flag mask.
1. The HA_HAS_RECORDS table flag has been set.
2. The ha_myisammrg::records method has been overridden to
calculate total number of records in underlying tables.
storage/myisammrg/myrg_records.c:
Fixed bug#36006: Optimizer does table scan for select count(*).
The myrg_records function has been added to calculate total number
of records in underlying tables.
include/myisammrg.h:
Fixed bug#36006: Optimizer does table scan for select count(*).
The myrg_records function declaration has been added.
mysql-test/r/merge.result:
Added test case for bug#36006.
mysql-test/t/merge.test:
Added test case for bug#36006.
storage/myisammrg/CMakeLists.txt:
Fixed bug#36006: Optimizer does table scan for select count(*).
New myrg_records.c file has been added.
storage/myisammrg/Makefile.am:
Fixed bug#36006: Optimizer does table scan for select count(*).
New myrg_records.c file has been added.
storage/myisammrg/ha_myisammrg.cc:
Fixed bug#36006: Optimizer does table scan for select count(*).
The ha_myisammrg::records method has been overridden.
storage/myisammrg/ha_myisammrg.h:
Fixed bug#36006: Optimizer does table scan for select count(*).
1. The HA_HAS_RECORDS table flag has been set.
2. The ha_myisammrg::records method has been overridden.
When a zero length is provided to the my_decimal_length_to_precision
function along with unsigned_flag set to false it returns a negative value.
For queries that employs temporary tables may cause failed assertion or
excessive memory consumption while temporary table creation.
Now the my_decimal_length_to_precision and the my_decimal_precision_to_length
functions take unsigned_flag into account only if the length/precision
argument is non-zero.
mysql-test/t/type_decimal.test:
Added a test case for the bug#36023: Incorrect handling of zero length caused
an assertion to fail.
mysql-test/r/type_decimal.result:
Added a test case for the bug#36023: Incorrect handling of zero length caused
an assertion to fail.
sql/my_decimal.h:
Bug#36023: Incorrect handling of zero length caused an assertion to fail.
Now the my_decimal_length_to_precision and the my_decimal_precision_to_length
functions take unsigned_flag into account only if the length/precision
argument is non-zero.
into host.loc:/home/uchum/work/5.1-bugteam
mysql-test/r/subselect.result:
Merge with 5.0-bugteam (bug#36139).
mysql-test/t/subselect.test:
Merge with 5.0-bugteam (bug#36139).
Post-commit minor cleanup of testcase (bug#36139).
mysql-test/r/subselect.result:
Post-commit minor cleanup of testcase (bug#36139).
mysql-test/t/subselect.test:
Post-commit minor cleanup of testcase (bug#36139).
into host.loc:/home/uchum/work/5.1-bugteam
mysql-test/r/ctype_gbk.result:
Auto merged
mysql-test/r/subselect3.result:
Auto merged
mysql-test/t/subselect3.test:
Auto merged
sql/sql_select.cc:
Auto merged
strings/ctype-big5.c:
Merge with 5.0-bugteam (bug#35993).
strings/ctype-gbk.c:
Merge with 5.0-bugteam (bug#35993).
The function test_if_skip_sort_order ignored any covering index used for ref
access of a table in a query with ORDER BY if this index was incompatible
with the ORDER BY list and there was another covering index compatible with
this list.
As a result sub-optimal execution plans were chosen for some queries with
ORDER BY clause.
mysql-test/r/distinct.result:
Adjusted results after the fix for bug#35844.
mysql-test/r/order_by.result:
Added a test case for bug#35844.
mysql-test/t/order_by.test:
Added a test case for bug#35844.
impossible WHERE/HAVING clause
(subselect_single_select_engine::exec).
Allocation and initialization of joined table list t1, t2... of
subqueries like:
NOT IN (SELECT ... FROM t1,t2,... WHERE 0)
is optimized out, however server tries to traverse this list.
mysql-test/r/subselect3.result:
Added test case for bug#36005.
mysql-test/t/subselect3.test:
Added test case for bug#36005.
sql/sql_select.cc:
Fixed bug#36005.
1. JOIN::prepare initializes JOIN::table counter (actually a size
of the JOIN::join_tab array) and sets it to a number of joined tables.
2. The make_join_statistics function (when called from JOIN::optimize)
allocates and fills the JOIN::join_tab array.
However, when optimizing subselect has impossible (definite false)
WHERE or HAVING clause, optimizer skips call to make_join_statistics
and leaves JOIN::join_tab == NULL.
3. subselect_single_select_engine::exec does traversal of the JOIN::join_tab
array and the server dies because array is not allocated but array
counter is greater than 0.
The JOIN::optimize method has been modified to reset the JOIN::table
counter to 0 in cause of impossible WHERE/HAVING clause.
Grouping or ordering of long values in not indexed BLOB/TEXT columns
with GBK or BIG5 charsets crashes the server.
MySQL server uses sorting (the filesort procedure) in the temporary
table to evaluate the GROUP BY clause in case of lack of suitable index.
That procedure takes into account only first @max_sort_length bytes
(system variable, usually 1024) of TEXT/BLOB sorting key string.
The my_strnxfrm_gbk and my_strnxfrm_big5 fill temporary keys
with data of whole blob length instead of @max_sort_length bytes
length. That buffer overrun has been fixed.
mysql-test/r/ctype_gbk.result:
Added test case for bug #35993.
mysql-test/t/ctype_gbk.test:
Added test case for bug #35993.
strings/ctype-big5.c:
Fixed bug #35993: memory corruption and crash with multibyte conversion.
Buffer overrun has been fixed in the my_strnxfrm_big5 function.
strings/ctype-gbk.c:
Fixed bug #35993: memory corruption and crash with multibyte conversion.
Buffer overrun has been fixed in the my_strnxfrm_gbk function.
- Make convert_zerofill_number_to_string() take into account that the
constant it is converting may evaluate to NULL.
mysql-test/r/subselect.result:
BUG#36139 "float, zerofill, crash with subquery"
- Testcase
mysql-test/t/subselect.test:
BUG#36139 "float, zerofill, crash with subquery"
- Testcase
Among two claimed artifacts the critical one is in that the Table map of
a query following the failing with a duplicate key error CREATE-SELECT is skipped from
instantionating (and thus binlogging). That leads to sending a "chopped" group of the data
row-events without the table map head to the slave.
The slave can not apply the only data row events.
It's not easy to force the slave to react with an error in such a case (the second complaint
on the bug report), because the lack of a table Rows_log_event::do_apply_event the data row event
handler is a common situation which normally designates the event has to be filtered out
basing on the repliation do/ingore rules decision.
Fixed: table map creating and binlogging is restored via deploying the standard cleanup call in
select_create::abort().
No error is reported if by chance the table map was not been binlogged.
Leaving this out to resolve with considering how to combine the do/ingore rules with the situation
when erronoulsy the Table_map is not written to binlog.
mysql-test/suite/rpl/r/rpl_row_create_table.result:
results changed
mysql-test/suite/rpl/t/rpl_row_create_table.test:
regression test for the bug
sql/sql_insert.cc:
adding resetting of thd binlogging state that was missed for the particular case of failing CREATE..SELECT
Problem: SELECTs prohibited for a transactional SE in autocommit mode
if read_only is set.
Fix: allow them.
mysql-test/r/read_only_innodb.result:
Fix for bug #35732: read-only blocks SELECT statements in InnoDB
- test result.
mysql-test/t/read_only_innodb.test:
Fix for bug #35732: read-only blocks SELECT statements in InnoDB
- test case.
sql/handler.cc:
Fix for bug #35732: read-only blocks SELECT statements in InnoDB
- in autocommit mode thd->transaction.all list is empty thus
is_real_trans set to TRUE for any SELECTs, so using it in the
"read_only" check is insufficient.
ha_check_and_coalesce_trx_read_only() changed to return number
of engines with read-write changes. This value is used in the
"read-only" check and checks for GLOBAL READ LOCK.
sql/lock.cc:
Fix for bug #35732: read-only blocks SELECT statements in InnoDB
- added assert(protect_against_global_read_lock) before decreasing,
in order to catch (uint) 0 - 1 situation due to wrong
wait_if_global_read_lock()/start_waiting_global_read_lock() call
sequence.
Corrects build problems embedded on Windows
Makefile.am:
Install .sym or mysqld-debug if exists
query_cache_debug.test, query_cache_debug.result:
Set more resonable query cache size (bug#35749)
CMakeLists.txt:
Added missing stacktrace.c
mysql-test/r/query_cache_debug.result:
Set more resonable query cache size (bug#35749)
mysql-test/t/query_cache_debug.test:
Set more resonable query cache size (bug#35749)
libmysqld/CMakeLists.txt:
Added missing stacktrace.c
sql/Makefile.am:
Install .sym or mysqld-debug if exists
sql/mysqld.cc:
Corrects build problems embedded on Windows
Problems were caused by modifications of
- the server
- HANDLER FOR SQLSTATE '00000' is now rejected (bug fix)
affects several ..._storedproc* tests
- improved error message
affects the ..._trig_03e
- improved content of information_schema.COLUMNS about
information_schema.REFERENTIAL_CONSTRAINTS
affects is_columns_is
- the content of the community build (collations)
affects charset_collation_3
mysql-test/suite/funcs_1/r/charset_collation_3.result:
Updated result
mysql-test/suite/funcs_1/r/innodb_storedproc.result:
Updated result
mysql-test/suite/funcs_1/r/innodb_storedproc_02.result:
Updated result
mysql-test/suite/funcs_1/r/innodb_trig_03e.result:
Updated result
mysql-test/suite/funcs_1/r/is_columns_is.result:
Updated result
mysql-test/suite/funcs_1/r/memory_storedproc.result:
Updated result
mysql-test/suite/funcs_1/r/memory_storedproc_02.result:
Updated result
mysql-test/suite/funcs_1/r/memory_trig_03e.result:
Updated result
mysql-test/suite/funcs_1/r/myisam_storedproc.result:
Updated result
mysql-test/suite/funcs_1/r/myisam_storedproc_02.result:
Updated result
mysql-test/suite/funcs_1/r/myisam_trig_03e.result:
Updated result
mysql-test/suite/funcs_1/r/ndb_storedproc.result:
Updated result
mysql-test/suite/funcs_1/r/ndb_storedproc_02.result:
Updated result
mysql-test/suite/funcs_1/r/ndb_trig_03e.result:
Updated result
mysql-test/suite/funcs_1/storedproc/storedproc_02.inc:
Corrected script
mysql-test/suite/funcs_1/storedproc/storedproc_master.inc:
Corrected script
mysql-test/include/master-slave-reset.inc:
Adding missing waits for slave to start and stop causing test failures.
mysql-test/suite/rpl/t/rpl_insert.test:
Waiting for the rows to be inserted instead of relying on the binlog position
to be updated correctly.
Disabled 'rpl_redirect', failure is sporadic and and the test is superfluous
rpl_packet.test, rpl_packet.result:
Removing race conditions from rpl_packet causing test to fail
mysql-test/suite/rpl/t/disabled.def:
Disabled 'rpl_redirect', failure is sporadic and and the test is superfluous
mysql-test/suite/rpl/r/rpl_packet.result:
Result change.
mysql-test/suite/rpl/t/rpl_packet.test:
Setting net_buffer_length correctly for the test instead of relying on it
being set correctly. Waiting for slave to stop after issuing a SLAVE STOP
and waiting for slave to start when issuing a SLAVE START to prevent race
conditions causing test failure.
into dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
mysql-test/suite/rpl/r/rpl_packet.result:
Auto merged
mysql-test/suite/rpl/t/rpl_packet.test:
Auto merged
mysql-test/r/rpl_packet.result:
Result change.
mysql-test/t/rpl_packet.test:
Setting net_buffer_length correctly for the test instead of relying on it
being set correctly. Waiting for slave to stop after issuing a SLAVE STOP
and waiting for slave to start when issuing a SLAVE START to prevent race
conditions causing test failure.
tables is not zero any more. For row-based logging, there is an extra commit
for sending rows changed by the statement to the binary log.
mysql-test/include/commit.inc:
For row-based logging, an extra commit is done for each statement to commit
non-transactional changes to the binary log.
mysql-test/r/commit_1innodb.result:
Result change.
into magare.gmz:/home/kgeorge/mysql/work/merge-build-5.1-bugteam
sql/log.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/share/errmsg.txt:
merged 5.1-main to 5.1-bugteam
into magare.gmz:/home/kgeorge/mysql/work/merge-build-5.1-bugteam
include/my_dbug.h:
Auto merged
mysys/mf_keycache.c:
Auto merged
sql/item_func.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_select.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/mi_test1.c:
Auto merged
storage/myisam/mi_test2.c:
Auto merged
storage/myisam/mi_write.c:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
If a binlog file is manually replaced with a namesake directory the internal purging did
not handle the error of deleting the file so that eventually
a post-execution guards fires an assert.
Fixed with reusing a snippet of code for bug@18199 to tolerate lack of the file but no other error
at an attempt to delete it.
The same applied to the index file deletion.
The cset carries pieces of manual merging.
mysql-test/r/binlog_index.result:
new results
mysql-test/r/ctype_big5.result:
results changed
mysql-test/suite/binlog/r/binlog_auto_increment_bug33029.result:
new results
mysql-test/suite/binlog/r/binlog_stm_blackhole.result:
new results
mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test:
cleanup. still todo: to let the test run multiple times w/o restarting the server (just ./mtr test)
mysql-test/suite/rpl/r/rpl_stm_auto_increment_bug33029.result:
results changed
mysql-test/suite/rpl/t/rpl_stm_auto_increment_bug33029.test:
guarding the test with statement format condition as the logics of the test requires
sql/log.cc:
two changes. One for the bug, other manual merge.
The bug change needs MYF(0) to pass to my_delete because not all error out of the function
are critical. The finer check is done on the caller of my_delete similarly how it was implemented
for bug@18199 fixes. Non-existance of a file is not a critical error.
sql/sql_class.cc:
manual merge, removing extra automatically brought hunk.
into mysql1000.(none):/home/andrei/MySQL/MERGE/5.1-main2rpl
client/mysqltest.c:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sql_class.cc:
Auto merged
1. Use 'dat' extension, because it is handled in Makefile.am;
2. Fix typo: the bug id is 35469, not 35649.
mysql-test/std_data/bug35469.dat:
Rename: mysql-test/std_data/bug35649.data -> mysql-test/std_data/bug35469.dat
mysql-test/r/loaddata.result:
Update result file.
mysql-test/t/loaddata.test:
1. Use 'dat' extension, because it is handled in Makefile.am;
2. Fix typo: the bug id is 35469, not 35649.
mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result:
Result change.
mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
Result change.
mysql-test/suite/rpl/r/rpl_switch_stm_row_mixed.result:
Result change.
mysql-test/suite/rpl/t/rpl_switch_stm_row_mixed.test:
Removing rows causing tests to be non-deterministic.
improving a test that shows a failure.
the wait condition was for data in tables but the
log positions are updates after the data are unlocked.
So there was a time window
[after_table_unlock_for_select, log_pos_updated] where the
orig cond was true but log position might be changed.
the correct one is to expect the last pos of the
slave's insert in the output of show_slave_status on the
master.
mysql-test/suite/rpl/t/rpl_flushlog_loop.test:
refining a sychronization condition (2 times)
The problem was that LOAD DATA code (sql_load.cc) didn't take into
account that there may be items, representing references to other
columns. This is a usual case in views. The crash happened because
Item_direct_view_ref was casted to Item_user_var_as_out_param,
which is not a base class.
The fix is to
1) Handle references properly;
2) Ensure that an item is treated as a user variable only when
it is a user variable indeed;
3) Report an error if LOAD DATA is used to load data into
non-updatable column.
mysql-test/r/loaddata.result:
Update result file.
mysql-test/t/loaddata.test:
Add a test case form Bug#35469: server crash with
LOAD DATA INFILE to a VIEW.
sql/share/errmsg.txt:
Introduce a new error.
sql/sql_load.cc:
Handle reference-items properly.
mysql-test/std_data/bug35649.data:
Add a data file for the test case.
after few delete statements
Problem: changing a file size might require that it must be
unmapped beforehand.
Fix: unmap the file before changing its size.
mysql-test/r/temp_table.result:
Fix for bug #35392: Delete all statement does not execute properly
after few delete statements
- test result.
mysql-test/t/temp_table.test:
Fix for bug #35392: Delete all statement does not execute properly
after few delete statements
- test case.
storage/myisam/mi_delete_all.c:
Fix for bug #35392: Delete all statement does not execute properly
after few delete statements
- unmap file before changing its size as it's required
by SetEndOfFile() function (see my_chsize()).
- as no other threads allowed to perform concurrent inserts
when delete_all is called, mmap_lock locking removed.