Consider the statement:
CREATE TABLE t1 (a INT) PARTITION BY KEY
/*150611 ALGORITHM = 1*/
What does this statement do?
A.
Create the t1 table partitioned by KEY with the default algorithm in all versions.
B.
Create the t1 table partitioned by KEY using algorithm 1 only in MYSQL version 5.6.11
and the default algorithm in other versions.
C.
Create the t1 table partitioned by KEY using algorithm 1 only in MYSQL versions 5.6.11
or newer and the default algorithm in older versions.
D.
Create the t1 table partitioned by KEY using algorithm 1 only if the preceding statement
returned error condition 50611.
All I could find is this(and I am still confused) but it looks like C is correct. You can use Algorithm=1 in newer versions to step back to older versions of 5.1.
https://dev.mysql.com/doc/refman/5.6/en/alter-table-partition-operations.html
MySQL 5.6.11 and later supports an ALGORITHM option with [SUB]PARTITION BY [LINEAR] KEY. ALGORITHM=1 causes the server to use the same key-hashing functions as MySQL 5.1 when computing the placement of rows in partitions; ALGORITHM=2 means that the server employs the key-hashing functions implemented and used by default for new KEY partitioned tables in MySQL 5.5 and later.
Correct Answer is C.
https://dev.mysql.com/doc/refman/5.6/en/create-table.html
This causes MySQL 5.6.10 and earlier servers to ignore the option
C