On 26.01.2016 15:13, Kristian Nielsen wrote:
Colin Charles <byte@aeon.com.my> writes:
MySQL 5.7 has been released and I’m sure you realise that it uses the variable slave_parallel_workers (http://dev.mysql.com/doc/refman/5.7/en/replication-options-slave.html#sysvar...). In MariaDB Server 10.1 we use slave_parallel_threads (https://mariadb.com/kb/en/mariadb/replication-and-binary-log-server-system-v...) It would be wise for us to alias this, so that its easier from a DBA usability standpoint IMHO The problem with doing this is that the options are not identical between MySQL and MariaDB. This means that users/DBAs can experience unpleasant surprises when their configuration carries over from one to the other but then silently does the wrong thing.
For example, --slave-parallel-workers in MySQL enables out-of-order parallel replication between schemas. This can break replication unless applications are careful to avoid cross-schema queries. In contrast, MariaDB --slave-parallel-threads is in-order (unless GTID is used), so does not restrict applications. This means that moving from a MariaDB with --slave-parallel-workers set to MySQL can silently break replication.
But maybe the options are sufficiently similar (or maybe we do not care about MariaDB->MySQL migrations). If the consensus is to add the alias, I do not have a strong opinion one way or the other.
Attached is a patch that implements this. Monty or Sanja, can one of you review the patch? IIRC, you worked previously on MySQL option compatibility.
- Kristian.
The patch is OK, but please run full test suite, IMHO sys_vars shouod bring some surprises to fix.