Problem: "Data truncated" warning was incorrectly generated
when storing a Japanese character encoded in utf8
into a cp932 column.
Reason: Incorrect wrong warning condition
compared the original length of the character in bytes
(which is 3 in utf8) to the converted length of the
character in bytes (which is 2 in cp932).
Fix: use "how many bytes were scanned from input" instead
of "how many bytes were put to the column" in the condition.
Problem: The Table_type column of "SHOW FULL TABLES" displayed
"ERROR" instead of "BASE TABLE" for tables having non-ascii
characters in their names.
Reason: tablename to filename encoding was missing, so
mysql_frm_type() tried to open a wrong file name.
Fix: adding tablename to filename encoding
This patch deprecates the replication startup options in the configuration
file and on the command line. The options deprecated include:
MASTER_HOST, MASTER_USER, MASTER_PASSWORD, MASTER_PORT, MASTER_CONNECT_RETRY,
MASTER_SSL, MASTER_SSL_CA, MASTER_SSL_CAPATH, MASTER_SSL_CERT, MASTER_SSL_KEY,
and MASTER_SSL_CIPHER
The code is designed to print the warning message once.
This patch deprecates the replication startup options in the configuration
file and on the command line. The options deprecated include:
MASTER_HOST, MASTER_USER, MASTER_PASSWORD, MASTER_PORT, MASTER_CONNECT_RETRY,
MASTER_SSL, MASTER_SSL_CA, MASTER_SSL_CAPATH, MASTER_SSL_CERT, MASTER_SSL_KEY,
and MASTER_SSL_CIPHER
The code is designed to print the warning message once.
Implementing this feature connected to wl#3368 mixed binlog_format default.
Supplied by my.cnf or explicitly in command line option gets be displayed.
When not supplied `(No default value)' is displayed, even though --log-bin might
be supplied. The option is different object from @@global.binlog_format variable.
The default `mixed' for the latter is dependant on presence of `--log-bin' option,
otherwise the value of the var is set to NULL (undefined):
var := opt | MIXED when binlog-in-use
var := NULL otherwise (no binlog, no format)
Comments on NDB and mixed format updated, also dependency the option on --log-bin
aka binlog-in-use is worded.
Making t/rpl_switch_stm_row_mixed.test to interprete DEFAULT for binlog_format
as MIXED.
Comments on what the test covers are added.
todo/fixme: turning @@global.binlog_format to be read-only when it's set to NULL (no binlog).
todo/fixme: options dependacy (acyclic) graph, particularly to solve a task of
setting defaults values for the leaf nodes
only when parents' nodes are set.
of untouched rows in full table scans".
SELECT ... FOR UPDATE/LOCK IN SHARE MODE statements as well as
UPDATE/DELETE statements which were executed using full table
scan were not releasing locks on rows which didn't satisfy
WHERE condition.
This bug surfaced in 5.0 and affected NDB tables. (InnoDB tables
intentionally don't support such unlocking in default mode).
This problem occured because code implementing join didn't call
handler::unlock_row() for rows which didn't satisfy part of condition
attached to this particular table/level of nested loop. So we solve
the problem adding this call.
Note that we already had this call in place in 4.1 but it was lost
(actually not quite correctly placed) when we have introduced nested
joins.
Also note that additional QA should be requested once this patch is
pushed as interaction between handler::unlock_row() and many recent
MySQL features such as subqueries, unions, views is not tested enough.