into mysql.com:/home/mysql_src/mysql-4.1
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
by binlogging some SET ONE_SHOT CHARACTER_SETetc,
which will be enough until we have it more compact and more complete in 5.0. With the present patch,
replication will work ok between 4.1.3 master and slaves, as long as:
- master and slave have the same GLOBAL.COLLATION_SERVER
- COLLATION_DATABASE and CHARACTER_SET_DATABASE are not used
- application does not use the fact that table is created with charset of the USEd db (BUG#2326).
all of which are not too hard to fulfill.
ONE_SHOT is reserved for internal use of mysqlbinlog|mysql and works only for charsets,
so we give error if used for non-charset vars.
Fix for BUG#3875 "mysqlbinlog produces wrong ouput if query uses
variables containing quotes" and BUG#3943 "Queries with non-ASCII literals are not replicated
properly after SET NAMES".
Detecting that master and slave have different global charsets or server ids.
mysql-test/r/rpl_server_id1.result:
it's normal to not run as I have added a test to compare server ids of master and slave
at startup and stop if equal (unless --replicate-same-server-id)
mysql-test/r/rpl_user_variables.result:
result update (as we now print charset of user var).
mysql-test/r/user_var.result:
result update
mysql-test/t/rpl_server_id1.test:
no need to select as slave is not running
mysql-test/t/user_var.test:
testing if the content of user vars is escaped when mysqlbinlog prints them,
and if the name is backquoted.
sql/lex.h:
new keyword ONE_SHOT
sql/log.cc:
when writing to the binlog, before writing the actual statement, write some SET ONE_SHOT CHARACTER_SET_CLIENT etc
for the slave to know the charset variables (which are important as they affect the inserted data).
sql/log_event.cc:
print charset and collation of user var in mysqlbinlog and SHOW BINLOG EVENTS.
escape the content of the var. Backquote its name.
Will ask Bar to check that using my_charset_bin for escaping is ok.
sql/set_var.cc:
understand SET CHARACTER_SET_CLIENT=10 (don't require a string, accept a number).
Refuse changing of GLOBAL CHARACTER_SET_SERVER/COLLATION_SERVER if binlog or slave,
as it will make the master or slave make wrong assumptions.
A function to catch SET ONE_SHOT on non-charset variables (which is forbidden)
sql/set_var.h:
no_support_one_shot to know if the var supports ONE_SHOT (only charset vars do, soon timezones).
Accept int arg in SET CHARACTER_SET_etc
sql/slave.cc:
when I/O slave thread starts, verify that master's and slave charsets match.
And by the way verify that server ids are different.
Don't fail if UNIX_TIMESTAMP() can't be done on master (very old master), that's
not fatal.
sql/sql_class.cc:
one_shot
sql/sql_class.h:
one_shot
sql/sql_lex.h:
one_shot
sql/sql_parse.cc:
when SET ONE_SHOT is used, verify that it's only used for charset/collation vars;
otherwise refuse.
sql/sql_yacc.yy:
ONE_SHOT keyword in SET
myisam/rt_index.c:
Auto merged
myisam/rt_index.h:
Auto merged
myisam/rt_mbr.c:
Auto merged
myisam/rt_mbr.h:
Auto merged
myisam/rt_split.c:
Auto merged
myisam/rt_test.c:
Auto merged
sql/spatial.cc:
Auto merged
some changes to make code nicer
include/myisampack.h:
mi_sint1korr and similar things added to do conversion in an
uniform way
myisam/rt_index.c:
'if' simplified
myisam/rt_mbr.c:
some fixes to make code nicer and smaller
myisam/rt_test.c:
some modifications to extend test
mysql-test/r/gis-rtree.result:
result became slightly different because of changes made
client/mysqltest.c:
Auto merged
include/mysql.h:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/include/row0mysql.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
libmysql/libmysql.c:
Auto merged
mysql-test/README:
Auto merged
mysql-test/r/select_found.result:
Auto merged
mysql-test/t/select_found.test:
Auto merged
mysys/mf_wcomp.c:
Auto merged
mysys/mf_wfile.c:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_base.cc:
Auto merged
configure.in:
Get changes for netware
include/my_sys.h:
Use local file
innobase/include/os0file.h:
auto merge
innobase/os/os0file.c:
auto merge
sql/mysqld.cc:
auto merge
sql/sql_acl.cc:
indentation change
sql/sql_acl.h:
use local file
sql/sql_class.h:
auto merge
sql/sql_db.cc:
use local file
sql/sql_parse.cc:
use local file
sql/sql_select.cc:
Merge
sql/sql_show.cc:
use local file
libmysqld/Makefile.am:
Removed define that is now defined by configure and my_global.h
mysql-test/r/func_gconcat.result:
Fixed test result after removing end space
sql/share/romanian/errmsg.txt:
Fixed wrong error message
sql/sql_insert.cc:
Removed compiler warning
removed influence of some tests on other tests
mysql-test/r/multi_update.result:
removed influence on other tests
mysql-test/r/subselect.result:
if exists should not be used inside test
mysql-test/t/multi_update.test:
removed influence on other tests
mysql-test/t/subselect.test:
if exists should not be used inside test
mysql-test/t/system_mysql_db_fix.test:
removed influence on other tests
--with-geometry and
--with-embedded-privilege-control
configure switches added
acconfig.h:
necessary lines added
myisam/mi_open.c:
#include added
mysql-test/t/gis-rtree.test:
test modified to take HAVE_GEOMETRY in account
mysql-test/t/gis.test:
test modified to take HAVE_GEOMETRY in account
sql/mysql_priv.h:
option's variables added
sql/mysqld.cc:
option's handling added
sql/set_var.cc:
option's descriptions added
mysql-test/r/ndb_autodiscover.result:
Removed one test that needs manual interaction
Added order by in some places
mysql-test/t/ndb_autodiscover.test:
Removed one test that needs manual interaction
Added order by in some places
sql/ha_ndbcluster.cc:
Using HA_WRONG_ASCII_ORDER to activate filesort on a not "sorted" ordered index.
Updated ndb_ test cases
mysql-test/r/ndb_autodiscover.result:
Updated to new output of error message
mysql-test/r/ndb_basic.result:
Added som order by to sort the result correctly before comparing
mysql-test/r/ndb_index_unique.result:
Added test for USING HASH combined with PRIMARY KEY and UNIQUE index
mysql-test/t/ndb_autodiscover.test:
Correctede error case
mysql-test/t/ndb_basic.test:
Added som order by
mysql-test/t/ndb_index_unique.test:
Added test for USING HASH combined with PRIMARY KEY and UNIQUE index
sql/ha_ndbcluster.cc:
Added the index flag HA_ONLY_WHOLE_INDEX if index is created with USING HASH.
Remove compiler warnings
Update windows project files
VC++Files/innobase/innobase.dsp:
Update project files after merge
VC++Files/libmysqld/examples/test_libmysqld.dsp:
Update project files after merge
VC++Files/libmysqld/libmysqld.dsp:
Update project files after merge
VC++Files/myisamchk/myisamchk.dsp:
Update project files after merge
VC++Files/myisamlog/myisamlog.dsp:
Update project files after merge
VC++Files/myisampack/myisampack.dsp:
Update project files after merge
VC++Files/mysqldemb/mysqldemb.dsp:
Update project files after merge
VC++Files/sql/mysqld.dsp:
Update project files after merge
VC++Files/strings/strings.dsp:
Update project files after merge
innobase/include/data0data.ic:
Fix compiler warning
innobase/include/mem0pool.h:
Remove reference to not existing variable (after merge fix)
innobase/srv/srv0srv.c:
Remove reference to not existing variable (after merge fix)
libmysqld/libmysqld.def:
Add function used by test programs
mysql-test/r/func_str.result:
After merge fixes
mysql-test/r/variables.result:
After merge fixes
mysql-test/t/variables.test:
After merge fixes
sql/discover.cc:
Remove not used lable
sql/opt_range.cc:
Removed compiler warnings
strings/ctype-tis620.c:
After merge fixes
VC++Files/client/mysqladmin.dsp:
Auto merged
VC++Files/client/mysqldump.dsp:
Auto merged
VC++Files/client/mysqlimport.dsp:
Auto merged
VC++Files/client/mysqlshow.dsp:
Auto merged
VC++Files/dbug/dbug.dsp:
Auto merged
VC++Files/heap/heap.dsp:
Auto merged
VC++Files/innobase/innobase.dsp:
Auto merged
VC++Files/isam/isam.dsp:
Auto merged
VC++Files/isamchk/isamchk.dsp:
Auto merged
VC++Files/libmysql/libmysql.dsp:
Auto merged
VC++Files/mysql.dsw:
Auto merged
BitKeeper/deleted/.del-sync0ipm.ic~2024167f6418de39:
Auto merged
VC++Files/libmysqltest/myTest.dsp:
Auto merged
VC++Files/merge/merge.dsp:
Auto merged
VC++Files/my_print_defaults/my_print_defaults.dsp:
Auto merged
VC++Files/myisam/myisam.dsp:
Auto merged
VC++Files/myisam_ftdump/myisam_ftdump.dsp:
Auto merged
VC++Files/myisammrg/myisammrg.dsp:
Auto merged
VC++Files/mysqlbinlog/mysqlbinlog.dsp:
Auto merged
VC++Files/mysqlcheck/mysqlcheck.dsp:
Auto merged
VC++Files/mysqlshutdown/mysqlshutdown.dsp:
Auto merged
VC++Files/mysqlwatch/mysqlwatch.dsp:
Auto merged
VC++Files/mysys/mysys.dsp:
Auto merged
VC++Files/pack_isam/pack_isam.dsp:
Auto merged
VC++Files/perror/perror.dsp:
Auto merged
VC++Files/regex/regex.dsp:
Auto merged
VC++Files/replace/replace.dsp:
Auto merged
VC++Files/test1/test1.dsp:
Auto merged
VC++Files/thr_test/thr_test.dsp:
Auto merged
VC++Files/vio/vio.dsp:
Auto merged
VC++Files/zlib/zlib.dsp:
Auto merged
extra/my_print_defaults.c:
Auto merged
include/m_string.h:
Auto merged
include/mysql_embed.h:
Auto merged
include/mysql_version.h.in:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/mem/mem0pool.c:
Auto merged
innobase/srv/srv0srv.c:
Auto merged
innobase/trx/trx0sys.c:
Auto merged
myisam/myisam_ftdump.c:
Auto merged
VC++Files/bdb/bdb.dsp:
Merge with 4.0
VC++Files/client/mysql.dsp:
Merge with 4.0
VC++Files/client/mysqlclient.dsp:
Merge with 4.0
VC++Files/comp_err/comp_err.dsp:
Merge with 4.0
VC++Files/libmysqld/examples/test_libmysqld.dsp:
Merge with 4.0
VC++Files/libmysqld/libmysqld.dsp:
Merge with 4.0
VC++Files/myisamchk/myisamchk.dsp:
Merge with 4.0
VC++Files/myisamlog/myisamlog.dsp:
Merge with 4.0
VC++Files/myisampack/myisampack.dsp:
Merge with 4.0
VC++Files/mysqldemb/mysqldemb.dsp:
Merge with 4.0
VC++Files/mysqlserver/mysqlserver.dsp:
Merge with 4.0
VC++Files/sql/mysqld.dsp:
Merge with 4.0
VC++Files/strings/strings.dsp:
Merge with 4.0
libmysqld/lib_sql.cc:
Merge with 4.0
libmysqld/libmysqld.def:
Merge with 4.0
mysql-test/r/func_str.result:
Merge with 4.0
mysql-test/r/handler.result:
auto
mysql-test/r/variables.result:
Merge with 4.0
mysql-test/t/func_str.test:
auto
mysql-test/t/handler.test:
auto
mysql-test/t/variables.test:
Merge with 4.0
scripts/make_win_src_distribution.sh:
auto
scripts/mysql_install_db.sh:
Use original file
sql/Makefile.am:
Merge with 4.0
sql/ha_innodb.cc:
auto
sql/item_strfunc.cc:
Merge with 4.0
sql/mysql_priv.h:
auto
sql/mysqld.cc:
Merge with 4.0
sql/set_var.cc:
Merge with 4.0
sql/slave.cc:
auto
sql/sql_class.h:
auto
sql/sql_handler.cc:
Merge with 4.0
strings/ctype-tis620.c:
Merge with 4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-explain-4.1
mysql-test/r/func_encrypt.result:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
mysql-test/r/derived.result:
explain of hidden subselect changed according to review
mysql-test/r/subselect.result:
explain of hidden subselect changed according to review
mysql-test/r/union.result:
explain of hidden subselect changed according to review
sql/sql_class.h:
we bo not need sign for now
sql/sql_lex.h:
we do not need sign for now
rpl_relayrotate.test to innodb.test since this test requires innodb support.
mysql-test/t/innodb-master.opt:
Rename: mysql-test/t/rpl_relayrotate-master.opt -> mysql-test/t/innodb-master.opt
work as expected": precision-losing conversion removed from
sys_var_thd_ulonglong.
mysql-test/r/variables.result:
Test case for Bug#3754
mysql-test/t/variables.test:
Test case for Bug#3754
sql/set_var.cc:
Fix for Bug#3754: precision-losing conversion removed from
sys_var_thd_ulonglong.
Fixed wrong number of warnings/duplicates for machines with high-byte-first
client/mysql.cc:
Remove not used variables
client/mysqltest.c:
Remove double ;
myisam/ft_nlq_search.c:
Fix valgrind error (not fatal)
myisam/rt_test.c:
Portability fix
mysql-test/r/rpl_trunc_binlog.result:
Portability fix
mysql-test/t/rpl_trunc_binlog.test:
Portability fix
(Column 23 was different on openbsd)
sql/sql_insert.cc:
Fixed wrong number of warnings/duplicates for machines with high-byte-first
strings/ctype-big5.c:
Portability fix
strings/ctype-gbk.c:
Portability fix
strings/ctype-mb.c:
Portability fix
strings/ctype-uca.c:
Portability fix
tests/client_test.c:
Portability fixes
mysql-test/r/handler.result:
Test case for BUG#3649
mysql-test/t/handler.test:
Test case for BUG#3649
sql/sql_handler.cc:
Fix for BUG#3649: when doing an index scan for an equality condition, use index_next_same to retrieve subsequent rows.
check for field_name (not only for name) in find_item_in_list, to be compatible with item->eq() that is done later
mysql-test/r/order_by.result:
bug#3681 - order by, distinct, refer to aliased field by name
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/ha_ndbcluster.h:
SCCS merged
BitKeeper/etc/logging_ok:
auto-union
client/mysql.cc:
Auto merged
client/mysqltest.c:
Auto merged
innobase/btr/btr0btr.c:
Auto merged
innobase/dict/dict0dict.c:
Auto merged
innobase/dict/dict0load.c:
Auto merged
innobase/eval/eval0eval.c:
Auto merged
innobase/ibuf/ibuf0ibuf.c:
Auto merged
innobase/include/ut0mem.h:
Auto merged
innobase/lock/lock0lock.c:
Auto merged
innobase/row/row0ins.c:
Auto merged
innobase/row/row0mysql.c:
Auto merged
innobase/row/row0sel.c:
Auto merged
innobase/row/row0umod.c:
Auto merged
innobase/row/row0upd.c:
Auto merged
innobase/trx/trx0trx.c:
Auto merged
innobase/ut/ut0dbg.c:
Auto merged
innobase/ut/ut0mem.c:
Auto merged
myisam/mi_dynrec.c:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/t/fulltext.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_show.cc:
Auto merged
innobase/os/os0file.c:
Merge with 4.0.20
Ensure that we call F_UNLCK for files on which we call F_WRLCK.
This is to ensure that this code will be portable accross most platforms.
myisam/ft_boolean_search.c:
Merge with 4.0.20 (keep original file)
myisam/ft_parser.c:
Merge with 4.0.20 (keep original file)
myisam/ftdefs.h:
Merge with 4.0.20 (keep original file)
mysql-test/r/func_encrypt.result:
right SELECT print
mysql-test/r/func_gconcat.result:
make results stable
mysql-test/t/func_gconcat.test:
make results stable
by adding sleep-and-retries (max 4 times) if MASTER_POS_WAIT() returns NULL
in sync_with_master and sync_slave_with_master.
The problem showed up only today, in MySQL 5.0 in rpl_server_id2.test,
but may affect 4.x as well, so fixing it here. Note that I am also fixing
5.0 too, with the same exact patch, because I don't want to leave 5.0 broken
until the next 4.0->4.1->5.0 merge.
client/mysqltest.c:
in sync_with_master (and sync_slave_with_master), if MASTER_POS_WAIT() returns NULL,
it may be that the slave SQL thread did not have time to start yes, so we sleep
1 sec and retry, 4 times at most.
mysql-test/r/rpl_server_id2.result:
result update
mysql-test/t/rpl_server_id2.test:
master_slave.inc already drops the table
mysql-test/r/func_gconcat.result:
test of Bug #3752
mysql-test/t/func_gconcat.test:
test of Bug #3752
sql/sql_base.cc:
check of item name presence in find_item_in_list