sql/rpl_record.cc:
Factoring out expression and putting it in an auto variable.
sql/rpl_utility.cc:
Removing a check that causes compile warnings.
sql/rpl_utility.h:
Ensuring that there is enough memory for the metadata, to avoid reads
from uninitialized memory. Initializing the memory to keep valgrind
quiet.
into mysql.com:/home/bar/mysql-work/mysql-5.1.b28875
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysys/charset.c:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_string.cc:
Auto merged
strings/conf_to_src.c:
Auto merged
strings/ctype-extra.c:
Auto merged
strings/ctype.c:
Auto merged
include/m_ctype.h:
After merge fix
mysql-test/r/ctype_ucs.result:
After merge fix
mysql-test/r/func_time.result:
After merge fix
mysql-test/t/ctype_ucs.test:
After merge fix
mysql-test/t/func_time.test:
After merge fix
sql/sql_lex.cc:
After merge fix
sql/sql_lex.h:
After merge fix
sql/sql_yacc.yy:
After merge fix
into mysql.com:/home/bar/mysql-work/mysql-5.0-rpl
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
strings/conf_to_src.c:
Auto merged
strings/ctype-extra.c:
Auto merged
mysql-test/r/ctype_ucs.result:
After merge fix
mysql-test/t/ctype_ucs.test:
After merge fix
(Regression, caused by a patch for the bug 22646).
Problem: when result type of date_format() was changed from
binary string to character string, mixing date_format()
with a ascii column in CONCAT() stopped to work.
Fix:
- adding "repertoire" flag into DTCollation class,
to mark items which can return only pure ASCII strings.
- allow character set conversion from pure ASCII to other character sets.
include/m_ctype.h:
Defining new flags.
Adding new function prototypes.
mysql-test/r/ctype_ucs.result:
Adding tests.
mysql-test/r/ctype_utf8.result:
Adding tests.
mysql-test/r/func_time.result:
Adding tests.
mysql-test/t/ctype_ucs.test:
Adding tests.
mysql-test/t/ctype_utf8.test:
Adding tests.
mysql-test/t/func_time.test:
Adding test.
mysys/charset.c:
Adding pure ASCII detection when loading a dynamic character set.
sql/item.cc:
- Moving detection of a Unicode superset into function.
- Adding detection of a ASCII subset.
- Adding creation of to-ASCII character set convertor when
safe_charset_converter() failed and when the argument.
repertoire is know to be pure ASCII.
sql/item.h:
- Adding "repertoire" member into DTCollation class.
- Adding "repertoire" argument to constructors.
- Adding new methods:
set_repertoire_from_charset()
set_repertoire_from_value()
sql/item_func.cc:
Adding "repertoire" argument.
sql/item_strfunc.cc:
Adding "repertoire" argument.
sql/item_timefunc.cc:
Initializing the result repertoire taking into account the "is_ascii"
flag of the current locale.
sql/sql_lex.cc:
Detect 7bit strings, return in Lex->text_string_is_7bit.
sql/sql_lex.h:
Adding new member into LEX structure.
Adding new member into Lex_input_stream
sql/sql_string.cc:
Allow simple copy from pure ASCII to a ASCII-based character set.
sql/sql_yacc.yy:
Depening on Lex->text_string_is_7bit and character set features,
create Item_string with MY_REPERTOIRE_ASCII when it is possible.
strings/conf_to_src.c:
- Adding printing of the "MY_CS_PUREASCII" flag
- Adding printing of copyright
strings/ctype-extra.c:
Recreating ctype-extra.c: ascii_general_ci and ascii_bin
are now marked with MY_CS_PUREASCII flag.
strings/ctype.c:
Adding new functions.
they got lost because of a merge conflict with the CMakeLists.txt
dependency fix (numer 29982 in our bugs DB).
These changes are for bug#30118.
client/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
libmysql/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
mysys/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
sql/CMakeLists.txt:
Added missing '${MYSQLD_EXE_SUFFIX}' to "mysqld" targets new in 5.1
zlib/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
New server (as of 5.1.21) provides new features:
- SHOW CREATE TRIGGER;
- character set information for SHOW TRIGGERS and SHOW CREATE
EVENT | FUNCTION | PROCEDURE statements.
Mysqldump uses these features to generate proper dump.
The bug happened when new mysqldump was used to dump older servers.
The problem was that 5.1.21 new features are not available, so
mysqldump exited with error code or just crashed.
The fix is to detect if mysqldump has ben run against older server
and don't use new 5.1.21 functionality in this case. Certainly,
the dump generated for the older server suffers from the character
set problems fixed by BUG#16291 and the like.
client/mysqldump.c:
Don't use new server features if they are not available.
This patch removes a portion of the last patch to Field_blob::copy
after problems found during testing of tests using distinct operations.
sql/field.h:
WL#3228 (NDB) : RBR using different table defs on slave/master
This patch removes a portion of the last patch to Field_blob::copy
after problems found during testing of tests using distinct operations.
The code uses the old version of teh get_length() method.
Moved duplicated code to inline function store_timestamp()
Save thd->time_zone_used when logging to table as CSV internally cases it to be changed
Added MYSQL_LOCK_IGNORE_FLUSH to log tables to avoid deadlock in case of flush tables.
Mark log tables with TIMESTAMP_NO_AUTO_SET to avoid automatic timestamping
Set TABLE->no_replicate on open
client/mysqlbinlog.cc:
Fixed several memory leaks (most in case of error situations)
mysql-test/r/events_logs_tests.result:
Made long_query_timeout smaller to ensure next query comes into log
mysql-test/r/variables.result:
Make it safe to run test with --log
mysql-test/t/events_logs_tests.test:
Made long_query_timeout smaller to ensure next query comes into log
mysql-test/t/variables.test:
Make it safe to run test with --log
sql/field.cc:
Moved duplicated code to inline function store_timestamp()
sql/field.h:
Moved duplicated code to inline function store_timestamp()
sql/handler.cc:
Reorder checks in likely order
Simplify checks if we should do binary logging
(no_replicate is set once and for all when table is opened)
sql/log.cc:
Save thd->time_zone_used as CVS internally cases it to be changed
Use Field_timestamp->store_timestamp instead of automatic timestamps.
This gives us correct timestamp even if thd->set_time() is not called (in case
of connect) and we don't have to store thd->query_start_used anymore.
sql/sql_base.cc:
Removed not needed comment
Moved LINT_INIT() to after declaration
Renamed temporary variable to avoid compiler warning
Added MYSQL_LOCK_IGNORE_FLUSH to log tables to avoid deadlock in case of flush tables.
Mark log tables with TIMESTAMP_NO_AUTO_SET to avoid automatic timestamping
sql/table.cc:
Set TABLE->no_replicate on open
client/mysqldump.c:
table type compare is changed to case insensitive
mysql-test/r/information_schema.result:
test result
mysql-test/r/information_schema_db.result:
result fix
mysql-test/suite/ndb/r/ndb_alter_table.result:
result fix
mysql-test/suite/ndb/r/ndb_temporary.result:
result fix
mysql-test/t/information_schema.test:
test case
sql/ha_ndbcluster.cc:
char* variables are changed to LEX_STRING
sql/ha_ndbcluster.h:
char* variables are changed to LEX_STRING
sql/ha_ndbcluster_binlog.cc:
char* variables are changed to LEX_STRING
sql/handler.cc:
char* variables are changed to LEX_STRING
sql/handler.h:
char* variables are changed to LEX_STRING
sql/sql_base.cc:
Modified functions which are used during open table process
according to table opening method and requested_object.
sql/sql_select.cc:
Add support for I_S tables into select_describe() function
sql/sql_show.cc:
1. Added initialization of 'open_method' to 'st_field_info' structs.
2. Added initialization of 'i_s_requested_object' to 'ST_SCHEMA_TABLE' structs.
3. New function which calculates database name and table name values
from 'where' condition if it's possible
void get_lookup_field_values(THD *thd, COND *cond, TABLE_LIST *table,
LOOKUP_FIELD_VALUES *lookup_field_vals);
4. New function which set table open method
setup_table_open_method(TABLE_LIST *tables,
ST_SCHEMA_TABLE *schema_table,
enum enum_schema_tables schema_table_idx)
5. New function
int make_db_list(THD *thd, List<LEX_STRING> *files,
LOOKUP_FIELD_VALUES *lookup_field_vals,
bool *with_i_schema)
6. New function
int make_table_name_list(THD *thd, List<LEX_STRING> *files, LEX *lex,
LOOKUP_FIELD_VALUES *lookup_field_vals,
bool with_i_schema, LEX_STRING *db_name)
7. Modified 'get_all_tables' function according to new schema(see wl#3732).
sql/sql_show.h:
char* variables are changed to LEX_STRING
sql/table.cc:
Modified functions which are used during open table process
according to table opening method and requested_object.
sql/table.h:
1. added new constants(open_method)
#define SKIP_OPEN_TABLE 0
#define OPEN_FRM_ONLY 1
#define OPEN_FULL_TABLE 2
2. Added new field 'open_method' into struct st_field_info;
uint open_method;
3. Added new field into ST_SCHEMA_TABLE struct
uint i_s_requested_object; /* the object we need to open(TABLE | VIEW) */.
4. Added new field to TABLE_LIST struct.
uint i_s_requested_object;
This field is set from ST_SCHEMA_TABLE.i_s_requested_object
for processed table before opening.
5. Added new fields to TABLE_LIST struct, used for 'explain select' for I_S table
bool has_db_lookup_value;
bool has_table_lookup_value;
uint table_open_method;
sql/unireg.h:
added new constants
This patch corrects a problem found during testing on Solaris. The code
changes how length values are retrieved on big endian machines. The
patch allows the rpl_extraColmaster tests to run on these machines.
mysql-test/suite/rpl/r/rpl_row_create_table.result:
WL#3228 (NDB) : RBR using different table defs on slave/master
New result file with changes from merge of 5.1 main.
mysql-test/suite/rpl/t/disabled.def:
WL#3228 (NDB) : RBR using different table defs on slave/master
Disable the rpl_rwo_extraColmaster_ndb test (WL#3915) because the code
fails on Big Endian machines. See BUG#29549 for more details.
sql/field.cc:
WL#3228 (NDB) : RBR using different table defs on slave/master
This patch corrects a problem found during testing on Solaris. The code
changes how the store_length method processes requests for values on
big endian machines.
sql/field.h:
WL#3228 (NDB) : RBR using different table defs on slave/master
This patch corrects a problem found during testing on Solaris. The code
changes how the store_length method processes requests for values on
big endian machines. It also changes the get_packed_length() method to
use the endian-ness of the host in getting the length + packlength.
sql/rpl_record.cc:
WL#3228 (NDB) : RBR using different table defs on slave/master
This patch turns on the little endian switch (db_low_byte_first) in
order to ensure the values are unpack correctly from binlog as they
are stored in little endian format in binlog.
sql/rpl_utility.cc:
WL#3228 (NDB) : RBR using different table defs on slave/master
This patch corrects a problem found during testing on Solaris. The code
changes how the calculated field size method processes requests for
values on big endian machines.
Manual transfer of the fix for bug#20815 from 5.0 to 5.1
CMakeLists.txt:
Limit stack size of the server to 1 MB.
Manual transfer of the fix for bug#20815 from 5.0 to 5.1
into mysql_cab_desk.:C:/source/c++/mysql-5.1-new-rpl-merge
mysql-test/lib/mtr_report.pl:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/log_event.cc:
Auto merged
mysql-test/suite/rpl/r/rpl_row_create_table.result:
Merge with 5.1 main.
into trift2.:/MySQL/M51/push-5.1
BitKeeper/deleted/.del-CMakeLists.txt~2eb9019b:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~86a68ea1:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~99a50df6:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~ef945345:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~fdec1f01:
Auto merged
dbug/CMakeLists.txt:
Auto merged
tests/CMakeLists.txt:
Auto merged
zlib/CMakeLists.txt:
Auto merged
client/CMakeLists.txt:
Will be re-applied using "patch".
libmysql/CMakeLists.txt:
Will be re-applied using "patch".
mysys/CMakeLists.txt:
Will be re-applied using "patch".
sql/CMakeLists.txt:
Will be re-applied using "patch".
into trift2.:/MySQL/M51/push-5.1
BitKeeper/deleted/.del-CMakeLists.txt~5b8836e4:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~fc201a06:
Auto merged
CMakeLists.txt:
Auto merged
tests/CMakeLists.txt:
Auto merged
Add CMakeLists.txt to source distribution
CMakeLists.txt:
Added missing '${MYSQLD_EXE_SUFFIX}' to "mysqld" targets new in 5.1
Manual merge from 5.0 (bug#30118)
CMakeLists.txt, mysqlbinlog.cc, lib_sql.cc:
No need to test on USING_CMAKE, it is the only Windows build
client/mysqlbinlog.cc:
No need to test on USING_CMAKE, it is the only Windows build
libmysqld/CMakeLists.txt:
No need to test on USING_CMAKE, it is the only Windows build
libmysqld/lib_sql.cc:
No need to test on USING_CMAKE, it is the only Windows build
libmysqld/Makefile.am:
Add CMakeLists.txt to source distribution
libmysqld/examples/Makefile.am:
Add CMakeLists.txt to source distribution
sql/CMakeLists.txt:
Added missing '${MYSQLD_EXE_SUFFIX}' to "mysqld" targets new in 5.1
client/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
libmysql/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
mysys/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
zlib/CMakeLists.txt:
Manual merge from 5.0 (bug#30118)
into mysql.com:/home/kent/bk/cmake-tls/mysql-5.1-build
BitKeeper/deleted/.del-CMakeLists.txt~13:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~14:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~3:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~8:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~9:
Auto merged
scripts/make_win_bin_dist:
SCCS merged
Aligned client library build and use with the Unix version when it
comes to what source to include directly in the builds, and what
libraries to link with (bug#30118).
Also reviewed, corrected and made more clear when static or dynamic
Thread Local Storage is to be used. Some code duplication was removed,
and some redundant library usage were removed, reducing the risk of
incorrect TLS usage.
client/CMakeLists.txt:
- Removed code duplication by moving build of "mysqlclient" to
the "libmysql" directory
- Link clients with the new "mysqlclient_notls", to protect for
the case the clients use more than the client API, and access
thread data directly.
- Synced explicit target addition of sources with Unix.
dbug/CMakeLists.txt:
No need to set CXX flags, no C++ code
libmysql/CMakeLists.txt:
- Aligned more with Unix version when it comes to included source files
- Build both DLL and static library in this directory
- Produce separe static TLS version of the static client library, for
use when building clients in this build that might access TLS
storage directly.
mysys/CMakeLists.txt:
We only have to build the static TLS version, as no clients are
linking directly with the "mysys" library.
scripts/make_win_bin_dist:
Ajusted paths to new "mysqlclient.lib" location in source tree
sql/CMakeLists.txt:
Removed duplicate "ha_blackhole.cc" in file listing
Removed explicit link to "dbug.lib" not needed
Link with the static TLS "mysqlclient_notls"
tests/CMakeLists.txt:
Removed explicit link to "dbug", "mysys", "yassl", "taocrypt" and
"zlib" not needed.
Added explicit source addition "../mysys/my_memmem.c".
No need for setting CXX flags, no C++ code.
Use the static TLS "mysqlclient_notls" for linkage.
zlib/CMakeLists.txt:
No need for a dynamic TLS version of this library, no access to thread
storage is done from it. Also no need to define MYSQL_CLIENT, not used,
or __WIN32__ that is handled by the library header without this define.
It has been possible to lock a view in 5.1 for some time.
mysql-test/r/lock.result:
Update results (Bug#5719)
mysql-test/t/lock.test:
Add a test case for Bug#5719 "impossible to lock VIEW"
Problem: thd->thread_specific_used flag is not set executing a statement
containig connection_id() function using PS protocol, that leads to
improper binlog event creation.
Fix: set the flag in the Item_func_connection_id::fix_fields().
sql/item_create.cc:
Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
- set the thd->thread_specific_used flag in the Item_func_connection_id::fix_fields()
to have it properly set using PS protocol as well.
sql/item_func.cc:
Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
- set the thd->thread_specific_used flag in the Item_func_connection_id::fix_fields()
to have it properly set using PS protocol as well.
sql/sql_parse.cc:
Fix for bug #30200: mysqlbinlog.test: connection_id() not restored under ps-protocol
- reset the thd->thread_specific_used flag in the mysql_reset_thd_for_next_command().