into mysql.com:/home/kgeorge/mysql/5.1/merge
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/view.result:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/ha_ndbcluster_binlog.cc:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
- small correction of previous patch
storage/ndb/src/ndbapi/DictCache.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
- cache not released properly
storage/ndb/tools/desc.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
- added retry option so that ndb_desc can be used to wait for a table to be created
The select statement that specified a view could be
slightly changed when the view was saved in a frm file.
In particular references to an alias name in the HAVING
clause could be substituted for the expression named by
this alias.
This could result in an error message for a query of
the form SELECT * FROM <view>. Yet no such message
appeared when executing the query specifying the view.
mysql-test/r/having.result:
Adjusted results after fixing bug #19573.
mysql-test/r/view.result:
Added a test case for bug #19573.
mysql-test/t/view.test:
Added a test case for bug #19573.
Removed Berkeley DB
configure.in:
Adjusted Netware support
basic.t.c:
Change for Netware
Makefile.am:
Use thread safe libmysqlclient_r if it was built
valgrind.supp:
Hide report about strlen/_dl_init_paths
ha_tina.cc:
Temporarely disable CSV engine on Netware,
as the engine depends on mmap()
net_serv.cc:
Include <sys/select.h> for Netware
sql/net_serv.cc:
Include <sys/select.h> for Netware
storage/csv/ha_tina.cc:
Temporarely disable CSV engine on Netware,
as the engine depends on mmap()
mysql-test/valgrind.supp:
Hide report about strlen/_dl_init_paths
tests/Makefile.am:
Use thread safe libmysqlclient_r if it was built
unittest/mytap/t/basic.t.c:
Change for Netware
configure.in:
Adjusted Netware support
support-files/mysql.spec.sh:
Removed Berkeley DB
into mysql.com:/usr/local/mysql/tmp-5.1
client/mysqlbinlog.cc:
Auto merged
include/my_sys.h:
Auto merged
libmysql/libmysql.c:
Auto merged
mysys/my_init.c:
Auto merged
sql/mysqld.cc:
Auto merged
dbug/dbug.c:
Manual merge
include/my_dbug.h:
Manual merge
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
client/mysql.cc:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/rpl_temporary.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/t/rpl_temporary.test:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/sql_show.cc:
Auto merged
storage/ndb/src/ndbapi/ClusterMgr.cpp:
Auto merged
storage/ndb/src/ndbapi/ClusterMgr.hpp:
Auto merged
storage/ndb/src/ndbapi/DictCache.hpp:
Auto merged
storage/ndb/src/ndbapi/TransporterFacade.hpp:
Auto merged
storage/ndb/src/ndbapi/ndb_cluster_connection.cpp:
Auto merged
storage/ndb/src/ndbapi/ndb_cluster_connection_impl.hpp:
Auto merged
mysql-test/r/information_schema.result:
manual merge
mysql-test/t/information_schema.test:
manual merge
sql/ha_ndbcluster.cc:
manual merge
storage/ndb/include/ndbapi/ndb_cluster_connection.hpp:
manual merge
storage/ndb/src/ndbapi/DictCache.cpp:
manual merge
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
mysql-test/t/disabled.def:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
if input year for date_add() / date_sub() with INTERVAL is low enough for
calc_daynr() to possibly return incorrect results (calc_daynr() has no information
on whether the year is low because it was a two-digit year ('77) or because it
was a really low four-digit year (0077) and will indiscriminately try to turn the
value into a four-digit year by adding 1900 or 2000 respectively), the functions
will now throw NULL.
include/my_time.h:
new define YY_MAGIC_BELOW: if year is below this threshold, magic kicks in in
calc_daynr(). the idea is to convert two-digit years to four-digit ones, adding
1900 to values >= YY_PART_YEAR or adding 2000 otherwise.
current value of YY_MAGIC_BELOW derived from original code in calc_daynr()
mysql-test/r/func_time.result:
test where 2 digit -> 4 digit year magic kicks in, and whether we throw NULL when
it happens
mysql-test/t/func_time.test:
test where 2 digit -> 4 digit year magic kicks in, and whether we throw NULL when
it happens
sql-common/my_time.c:
use new const YY_MAGIC_BELOW, apply 2-digit -> 4-digit magic only to years
below this threshold.
sql/item_timefunc.cc:
throw NULL when year in date_add() / date_sub() would be affected by
2 digit -> 4 digit magic.
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1-new
client/mysql.cc:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/t/mysql.test:
Auto merged
sql/item_timefunc.cc:
Auto merged
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
mysql-test/t/disabled.def:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
ndb/src/ndbapi/DictCache.cpp:
Auto merged
ndb/src/ndbapi/DictCache.hpp:
Auto merged
ndb/src/ndbapi/TransporterFacade.hpp:
Auto merged
ndb/src/ndbapi/ndb_cluster_connection.cpp:
Auto merged
ndb/src/ndbapi/ndb_cluster_connection_impl.hpp:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
ndb/include/ndbapi/ndb_cluster_connection.hpp:
manual merge
ndb/src/ndbapi/ClusterMgr.cpp:
manual merge
ndb/src/ndbapi/ClusterMgr.hpp:
manual merge
The problem is that in a MyISAM table the following column
after a varchar field gets corrupted, if varchar field is
extended.
This should be made to work without a copy in the future, but
I'm not sure if this code is ready yet. This fix will force copy
in this case. It will not do any harm to have it here, only makes
alter table a bit slower in this case. If this should work for
MyISAM, then the bug is somewhere else in that code.
Until it works, I propose this as a temporary fix or a workaround.
Test case for the bug has been added.
mysql-test/r/alter_table.result:
Added test case for Bug#19386: Multiple alter causes crashed table.
mysql-test/t/alter_table.test:
Added test case for Bug#19386: Multiple alter causes crashed table.
sql/ha_myisam.cc:
For MyISAM type, if varchar column is extended, it should return not
compatible for now. In other words, it forces a copy of the table during
alter table.
client/mysqlbinlog.cc:
Now my_end() deallocates DBUG by default, but that fails in mysqlbinlog
because of global destructors that use DBUG.
dbug/dbug.c:
Add a facility to deallocate the debug stack, to avoid memory leak warnings
in Valgrind.
include/my_dbug.h:
Add a facility to deallocate the debug stack, to avoid memory leak warnings
in Valgrind.
include/my_sys.h:
Change my_end() to deallocate DBUG memory by default (can be disabled with
MY_DONT_FREE_DBUG option).
libmysql/libmysql.c:
Do not deallocate DBUG during cleanup.
mysys/my_init.c:
Change my_end() to deallocate DBUG memory by default (can be disabled with
MY_DONT_FREE_DBUG option).
sql/mysqld.cc:
Add missing my_thread_end() call, seems to occasionally trigger a memory
leak (not repeatable).
specific to 5.0 version of the patch is motivated by the fact that a wrapper over
MYSQLLOG::write can not help in 5.0 where query's charset is embedded into event instance in the constructor.
sql/mysql_priv.h:
this 4.1 specific code does not help in 5.0
sql/sql_base.cc:
No wrapper similar to 4.1's version is done since Query_log_event constructor
takes care of encodings in 5.0 whereas log::write method does it in 4.1.
We can introduce an additional constuctor for Query_log_event to pass desired
(i.e system_character_info) charset different from THD's version.
But I am delaying this while there are not more bugs similar to this one reported.
- invalidate ndb dict cache on cluster disconnect (ClusterMgr.cpp)
- add check for correct frm on external lock when table cache is found invalid
ndb/include/ndbapi/ndb_cluster_connection.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ClusterMgr.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ClusterMgr.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/DictCache.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/DictCache.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/TransporterFacade.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ndb_cluster_connection.cpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
ndb/src/ndbapi/ndb_cluster_connection_impl.hpp:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
sql/ha_ndbcluster.cc:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
mysql-test/r/ndb_autodiscover3.result:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
mysql-test/t/ndb_autodiscover3.test:
Bug #16875 Using stale MySQLD FRM files can cause restored cluster to fail
Fix BUG#19542 "InnoDB doesn't increase the Handler_read_prev counter".
innobase/os/os0file.c:
Applied innodb-5.0-ss547 snapshot.
Check the page trailers also after writing to disk.
This improves the chances of diagnosing Bug 18886.
os_file_check_page_trailers(): New function for checking
that two copies of the LSN stamped on the pages match.
os_aio_simulated_handle(): Call os_file_check_page_trailers()
before and after os_file_write().
sql/ha_innodb.cc:
Applied innodb-5.0-ss547 snapshot.
Increment statistic counter in ha_innobase::index_prev().
- When manually constructing a SEL_TREE for "t.key NOT IN(...)", take into account that
get_mm_parts may return a tree with type SEL_TREE::IMPOSSIBLE
- Added missing OOM checks
- Added comments
mysql-test/r/func_in.result:
Testcase for BUG#19618
mysql-test/t/func_in.test:
Testcase for BUG#19618
Stored procedure execution sometimes placed the address of auto variables
in the list of Item changes to undo in THD::rollback_item_tree_changes().
This could cause stack corruption.
sql/sp_head.cc:
Avoid storing address of auto variables in global rollback list, to
prevent stack memory corruption.
sql/sp_head.h:
Avoid storing address of auto variables in global rollback list, to
prevent stack memory corruption.
sql/sp_rcontext.cc:
Avoid storing address of auto variables in global rollback list, to
prevent stack memory corruption.
sql/sp_rcontext.h:
Avoid storing address of auto variables in global rollback list, to
prevent stack memory corruption.
sql/sql_class.cc:
Avoid storing address of auto variables in global rollback list, to
prevent stack memory corruption.
into mysql.com:/opt/local/work/mysql-5.0-runtime-merge
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/im_options_set.result:
Auto merged
mysql-test/r/im_options_unset.result:
Auto merged
mysql-test/r/trigger-grant.result:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
manual merge to account 5.0 specific names of TABLE class
sql/mysql_priv.h:
manual merge: changing to 5.0's TABLE class names
sql/sql_base.cc:
manual merge: whitespaces and 5.0 TABLE's names
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0
mysql-test/r/mysqlbinlog.result:
Auto merged
sql/mysql_priv.h:
Auto merged
mysql-test/r/drop_temp_table.result:
manual merge use local
mysql-test/r/mix_innodb_myisam_binlog.result:
manual merge use local
mysql-test/r/rpl_temporary.result:
manual merge use local
mysql-test/t/mysqlbinlog.test:
manual merge
mysql-test/t/rpl_temporary.test:
manual merge. More than the bugs fixes: using disconnect con1 from 4.1's version instead of kill con1.
sql/sql_base.cc:
manual merge, should be in sync with 4.1's version.
over two views when using syntax with curly braces.
Each outer join operation must be placed in a separate
nest. This was not done when the syntax with curly braces
was used. In some cases, in particular, for queries with outer
join operation over views it could cause a crash.
mysql-test/r/join_outer.result:
Added a test case for bug #19396.
mysql-test/t/join_outer.test:
Added a test case for bug #19396.
into mysql.com:/home/psergey/mysql-5.1-merge2
mysql-test/r/select.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.h:
Auto merged
sql/opt_range.cc:
Manual merge
itself when executing queries referring to a view with GROUP BY
an expression containing non-constant interval.
It happened because Item_date_add_interval::eq neglected the
fact that the method can be applied to an expression of the form
date(col) + interval time_to_sec(col) second
at the time when col could not be evaluated yet.
An attempt to evaluate time_to_sec(col) in this method resulted
in a crash.
mysql-test/r/view.result:
Added a test case for bug #19490.
mysql-test/t/view.test:
Added a test case for bug #19490.
sql/item_timefunc.cc:
Fixed bug #19490. The bug that caused server crash manifested
itself when executing queries referring to a view with GROUP BY
an expression containing non-constant interval.
It happened because Item_date_add_interval::eq neglected the
fact that the method can be applied to an expression of the form
date(col) + interval time_to_sec(col) second
at the time when col could not be evaluated yet.
An attempt to evaluate time_to_sec(col) in this method resulted
in a crash.
The code of Item_date_add_interval::eq was corrected.