MySQL replicates the time zone only when operations that involve
it are performed. This is controlled by a flag. But this flag
is set only on successful operation.
The flag must be set also when there is an error that involves
a timezone (so the master would replicate the error to the slaves).
Fixed by moving the setting of the flag before the operation
(so it apples to errors as well).
mysql-test/r/rpl_timezone.result:
Bug #29536: test case
mysql-test/t/rpl_timezone.test:
Bug #29536: test case
sql/field.cc:
Bug #29536: move setting of the flag before the operation
(so it apples to errors as well).
sql/time.cc:
Bug #29536: move setting of the flag before the operation
(so it apples to errors as well).
This bug manifested itself for queries with grouping by columns of
the BIT type. It led to wrong comparisons of bit-field values and
wrong result sets.
Bit-field values never cannot be compared as binary values. Yet
the class Field_bit had an implementation of the cmp method that
compared bit-fields values as binary values.
Also the get_image and set_image methods of the base class Field
cannot be used for objects of the Field_bit class.
Now these methods are declared as virtual and specific implementations
of the methods are provided for the class Field_bit.
mysql-test/r/type_bit.result:
Added a test case for bug #30219.
mysql-test/t/type_bit.test:
Added a test case for bug #30219.
sql/field.h:
Fix bug #30219.
This bug manifested itself for queries with grouping by columns of
the BIT type. It led to wrong comparisons of bit-field values and
wrong result sets.
Bit-field values never cannot be compared as binary values. Yet
the class Field_bit had an implementation of the cmp method that
compared bit-fields values as binary values.
Also the get_image and set_image methods of the base class Field
cannot be used for objects of the Field_bit class.
Now these methods are declared as virtual and specific implementations
of these methods are provided for the class Field_bit.
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-2team
mysql-test/r/func_time.result:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
A test case was waiting for a fixed number of seconds for a specific
state of the slave IO thread to take place.
Fixed by waiting in a loop for that specific thread state instead
(or timeout).
mysql-test/t/rpl_relayspace.test:
Bug #25228: fixed test case
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.
The SELECT query with more than 31 nested dependent SELECT queries returned
wrong result.
New error message has been added: ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT.
It will be reported as: "Too high level of nesting for select".
sql/sql_parse.cc:
Fixed bug #27352.
The Item_sum::register_sum_func method has been modified to return
TRUE on exceeding of allowed level of SELECT nesting and to report
corresponding error message.
sql/unireg.h:
Fixed bug #27352.
Constant definition has been added: maximal allowed level of SELECT nesting.
mysql-test/t/select.test:
Updated test case for bug #27352.
mysql-test/r/select.result:
Updated test case for bug #27352.
sql/share/errmsg.txt:
Fixed bug #27352.
New error message has been added: ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT.
When DROP TABLE detects that it has been killed
by another thread it must unlock the table names
it locked.
Fixed by backporting the 5.1 error handling code.
sql/sql_table.cc:
Bug #30193: correct error handling when a thread
is killed inside DROP TABLE.
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().
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50
sql/handler.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50
mysql-test/r/federated.result:
Auto merged
mysql-test/t/federated.test:
Auto merged
sql/ha_federated.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/innodb_mysql.result:
Manual merge
mysql-test/t/innodb_mysql.test:
Manual merge
restores from mysqlbinlog out
Problem: using "mysqlbinlog | mysql" for recoveries the connection_id()
result may differ from what was used when issuing the statement.
Fix: if there is a connection_id() in a statement, write to binlog
SET pseudo_thread_id= XXX; before it and use the value later on.
mysql-test/r/mysqlbinlog.result:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- test result.
mysql-test/t/mysqlbinlog.test:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- test case.
sql/item_create.cc:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- set thread_specific_used flag for the connection_id() function.
sql/item_func.cc:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- always return thd->variables.pseudo_thread_id as a connection_id()
result, as it contains a proper value for both master and slave.
sql/log_event.cc:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- set LOG_EVENT_THREAD_SPECIFIC_F event flag if thread_specific_used
is set.
sql/sql_class.cc:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- thd->thread_specific_used introduced, which is set if thread specific
value(s) used in a statement.
sql/sql_class.h:
Fix for bug #29928: INSERT ... VALUES(connection_id(), ...) incorrect
restores from mysqlbinlog out
- thd->thread_specific_used introduced, which is set if thread specific
value(s) used in a statement.
which does not work. Removing these attempted privileges makes
this identical to option 5 so remove it completely. The spirit
of the program appears to be aimed at database privileges, so do
not add another option for granting global privileges as it may
be unexpected. Fixes bug#14618 (same as previous patch, this
time applied to -maint tree).
scripts/mysql_setpermission.sh:
Option 6 tries to apply global privileges at the database
level which does not work - remove it.
mysql-test/r/func_time.result:
Update results (use fixed datetime values instead of NOW()).
mysql-test/t/func_time.test:
Use fixed datetime values instead of NOW(): the test would have a sporadic
failure when current day changed between two consequtive calls to
NOW(). The test actually tests FROM_DAYS/TO_DAYS functions,
so use of NOW() is not necessary.
- test result.
Problem: we don't proper handle "" value of the --myisam-recover option.
Fix: turn off myisam recovering if --myisam-recover="" is set.
mysql-test/r/show_check.result:
Fix for bug #30088: Can't disable myisam-recover by a value of "".
- test result.
mysql-test/t/show_check-master.opt:
Fix for bug #30088: Can't disable myisam-recover by a value of "".
- test case.
mysql-test/t/show_check.test:
Fix for bug #30088: Can't disable myisam-recover by a value of "".
- test case.
sql/mysqld.cc:
Fix for bug #30088: Can't disable myisam-recover by a value of "".
- turn off myisam recovering if --myisam-recover="" is passed.
mysqld hasn't been built on AIX with ndb-everything in quite a while.
this allowed a variety of changes to be added that broke the AIX build
for both the GNU and IBM compilers (but the IBM suite in particular).
Changeset lets build to complete on AIX 5.2 for users of the GNU and
the IBM suite both. Tudo bem?
config/ac-macros/large_file.m4:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (2)
we no longer declare anything large-file on AIX. the
GNU C++ compiler declares _LARGE_FILE_API all of its
own, and either way we're now pulling in <standards.h>
when on AIX, which defines _LARGE_FILE_API (if not
already defined).
configure.in:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (1)
build NDB binaries as static on AIX. because that actually
*works*.
when building dynamic, with the IBM compiler (xlC_r), and
the build breaks on AIX due to missing symbols
(__vec__delete2 et al.), try adding -lhC to the Makefile.
include/mysql.h:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (2)
we're now pulling in <standards.h> when on AIX, which
defines _LARGE_FILE_API (if not already defined).
ndb/src/common/util/File.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (3)
do not de-scope the standards, for they may be funky macros
ndb/src/mgmclient/Makefile.am:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (4)
make IBM C++ compiler happy on AIX
ndb/src/mgmsrv/Makefile.am:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (5)
GNU compiler has no sense of humour about this
ndb/test/ndbapi/benchronja.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/flexAsynch.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/flexHammer.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/flexScan.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/flexTT.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/flexTimedAsynch.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/initronja.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
ndb/test/ndbapi/testOperations.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (7)
IBM C compiler on AIX is not happy with the re-def.
ndb/test/ndbapi/testScanFilter.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (8)
The IBM C++ compiler on AIX doesn't like initializing from pow().
This works, but breaks a VAL (bool res_cal[TUPLE_NUM] ...) later on.
ndb/test/odbc/SQL99_test/SQL99_test.cpp:
Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2 (6)
MAXTHREADS collides with a #define from <sys/thread.h> on AIX
(IBM compiler). Call it NDB_MAXTHREADS instead. Also explicitly
#undef it here lest someone use it by habit and get really funny
results. (K&R says we may #undef non-existent symbols.)
into bodhi.(none):/opt/local/work/mysql-5.0-runtime
client/mysqldump.c:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged
sql/sql_base.cc:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/innodb_mysql.result:
Manual merge.
mysql-test/t/innodb_mysql.test:
Manual merge.
sql/sql_table.cc:
Manual merge.
into magare.gmz:/home/kgeorge/mysql/autopush/B27417-5.0-opt
sql/handler.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
- Don't call mysql_select() several times for the select that enumerates
a temporary table with the results of the UNION. Making this call for
every subquery execution caused O(#enumerated-rows-in-the-outer-query)
memory allocations.
- Instead, call join->reinit() and join->exec(), and
= disable constant table detection for such joins,
= provide special handling for table-less constant subqueries.
sql/sql_select.cc:
BUG#29582: huge memory consumption with union, subselect, joins:
- Don't mark tables as constant if JOIN::no_const_tables flag is set
sql/sql_select.h:
BUG#29582: huge memory consumption with union, subselect, joins:
- Don't mark tables as constant if JOIN::no_const_tables flag is set
sql/sql_union.cc:
BUG#29582: huge memory consumption with union, subselect, joins:
- Don't call mysql_select() several times for the select that enumerates
a temporary table with UNION results.
- Instead, call join->reinit() and join->exec().
- Provide special handling for table-less constant subqueries.