2014-08-14 17:52:08 |
Morgan Tocker |
bug |
|
|
added bug |
2014-08-15 09:03:57 |
Robie Basak |
bug |
|
|
added subscriber Robie Basak |
2014-08-15 14:12:19 |
Robie Basak |
description |
Per:
http://www.tocker.ca/2014/08/14/set-global-sql_log_bin-we-need-your-feedback.html
Upstream MySQL is proposing to change the following syntax to produce an error in current GA releases (5.5 and 5.6):
mysql> SET GLOBAL sql_log_bin = x;
The rationale for this is:
- The syntax will cause slaves to drift out of sync from masters.
- The syntax has no known "correct" use.
- The syntax is too close to SET sql_log_bin=x - which does have a correct use.
- Since this command is often run interactively, it is too easy to incorrectly type the incorrect command (and destroy data).
- Producing a warning instead of an error does not prevent accidental command typing.
Upstream has a MicroReleaseException agreement in place with Ubuntu, and is requesting feedback before proceeding with making the change. |
SRU INFORMATION
[Background]
This is an API-breaking change proposed by upstream to the 5.5 stable
branch, targeted for Precise and Trusty. This does not fall under the
existing micro-release exception for mysql-5.5, and so must be
considered separately. In consideration of the micro-release exception
requirements, upstream have kindly drawn Ubuntu's attention to this
issue, and are interested in a decision for acceptance in an Ubuntu SRU
before making the change upstream, so that any change made is consistent
across upstream, Ubuntu and any other distributions that wish to follow
suit.
Depending on the time it takes to make a decision, this may also affect
mysql-5.6 in Utopic if this is after feature freeze or release.
We would like a +1 or a -1 from the SRU team (or Technical Board if
appropriate) for each of the two options presented below, preferably
well before any commits are made upstream or any uploads to Ubuntu if
possible.
This request currently comes from MySQL only, but we presume it is not
an issue if Ubuntu makes a single decision on this change for all
variants, if/when other variants wish to follow suit.
[Impact]
The command "SET GLOBAL sql_log_bin = ..." is not useful, causes slaves
to lose sync and thus can cause data loss, but the similar command "SET
sql_log_bin = ..." is useful, often issued interactively, and is close
enough to the "SET GLOBAL ..." command that the latter can be issued by
mistake.
[Proposed Development Fix]
Either: 1) log a warning when the command is used; or 2) refuse to run
the command when requested and generate an error.
Comments from the MySQL community, in response to the upstream request
for feedback
[http://www.tocker.ca/2014/08/14/set-global-sql_log_bin-we-need-your-feedback.html],
are overwhelmingly in favour of option 2.
[Proposed Stable Fix]
Same as development fix.
[Regression Potential]
Research
[http://blog.jcole.us/2014/08/08/stupid-and-dangerous-set-global-sql_log_bin/]
suggests that there is no known use case for this command, that the only
use of the command is by mistake, causes problems and/or data loss, and
this has happened in the real world in production environments.
[Original Description]
Per:
http://www.tocker.ca/2014/08/14/set-global-sql_log_bin-we-need-your-feedback.html
Upstream MySQL is proposing to change the following syntax to produce an error in current GA releases (5.5 and 5.6):
mysql> SET GLOBAL sql_log_bin = x;
The rationale for this is:
- The syntax will cause slaves to drift out of sync from masters.
- The syntax has no known "correct" use.
- The syntax is too close to SET sql_log_bin=x - which does have a correct use.
- Since this command is often run interactively, it is too easy to incorrectly type the incorrect command (and destroy data).
- Producing a warning instead of an error does not prevent accidental command typing.
Upstream has a MicroReleaseException agreement in place with Ubuntu, and is requesting feedback before proceeding with making the change. |
|
2014-08-15 14:12:37 |
Robie Basak |
summary |
Upstream SET GLOBAL sql_log_bin incompatible change |
"SET GLOBAL sql_log_bin" causes data loss |
|
2014-08-15 14:12:50 |
Robie Basak |
nominated for series |
|
Ubuntu Precise |
|
2014-08-15 14:12:50 |
Robie Basak |
nominated for series |
|
Ubuntu Trusty |
|
2014-08-15 14:12:50 |
Robie Basak |
bug task added |
|
mysql-5.5 (Ubuntu Trusty) |
|
2014-08-15 14:13:05 |
Robie Basak |
bug task added |
|
mysql-5.6 (Ubuntu) |
|
2014-08-15 14:13:16 |
Robie Basak |
bug task added |
|
mysql-5.5 (Ubuntu Precise) |
|
2014-08-15 14:13:16 |
Robie Basak |
bug task added |
|
mysql-5.6 (Ubuntu Precise) |
|
2014-08-15 14:13:35 |
Robie Basak |
bug task deleted |
mysql-5.6 (Ubuntu Precise) |
|
|
2014-08-15 14:13:40 |
Robie Basak |
bug task deleted |
mysql-5.6 (Ubuntu Trusty) |
|
|
2014-08-15 14:13:48 |
Robie Basak |
mysql-5.5 (Ubuntu): status |
New |
Triaged |
|
2014-08-15 14:13:51 |
Robie Basak |
mysql-5.5 (Ubuntu Precise): status |
New |
Triaged |
|
2014-08-15 14:13:54 |
Robie Basak |
mysql-5.5 (Ubuntu Trusty): status |
New |
Triaged |
|
2014-08-15 14:13:57 |
Robie Basak |
mysql-5.6 (Ubuntu): status |
New |
Triaged |
|
2014-08-15 14:14:00 |
Robie Basak |
mysql-5.5 (Ubuntu): importance |
Undecided |
Medium |
|
2014-08-15 14:14:03 |
Robie Basak |
mysql-5.5 (Ubuntu Precise): importance |
Undecided |
Medium |
|
2014-08-15 14:14:06 |
Robie Basak |
mysql-5.5 (Ubuntu Trusty): importance |
Undecided |
Medium |
|
2014-08-15 14:14:10 |
Robie Basak |
mysql-5.6 (Ubuntu): importance |
Undecided |
Medium |
|
2014-08-15 14:15:21 |
Robie Basak |
mysql-5.5 (Ubuntu): status |
Triaged |
Won't Fix |
|
2014-08-15 14:16:13 |
Robie Basak |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2014-08-15 17:25:24 |
Morgan Tocker |
bug watch added |
|
http://bugs.mysql.com/bug.php?id=67433 |
|
2014-08-15 17:25:24 |
Morgan Tocker |
bug task added |
|
mysql-server |
|
2015-11-13 11:54:50 |
Robie Basak |
mysql-5.5 (Ubuntu Precise): status |
Triaged |
Fix Released |
|
2015-11-13 11:54:53 |
Robie Basak |
mysql-5.5 (Ubuntu Trusty): status |
Triaged |
Fix Released |
|
2015-11-13 11:54:56 |
Robie Basak |
mysql-5.6 (Ubuntu): status |
Triaged |
Fix Released |
|