WL#5265: Deprecate features in Dahlia

Affects: Server-5.6   —   Status: Complete

NOTE: This WL serves as a place to list candidates for
deprecation/removal.
NOTE: 2010-07-28: Feedback was solicited from stakeholders,
but no decisions have been made.
NOTE: 2010-08-13: The thread_concurrency item was added to the
proposal, so the feedback period is extended to 2010-08-20.
NOTE: 2010-08-25: ServerPT approved decision to deprecate features
listed here in Dahlia, and to remove them 2 GA releases following
the GA release containing the deprecation warnings. For removal
scheduling, see WL#5681 and WL#5722.

This is a task for formally deprecating items in Dahlia (MySQL 5.6?)
so that they can be scheduled for post-Dahlia removal.

The proposal is that these items be deprecated in Dahlia such that
warnings accompany their use, and that they be removed in some
future release to be determined. Deprecation or removal has already
taken place for some of the items described here, but they are
listed for completeness.

[Note added 2010-10-06: Consistent with previous deprecations, we
should also add deprecation language to the --help descriptions
where appropriate.]

Candidates:

* BUG#44209:

Deprecate the --master-retry-count option, similar to deprecation
of other --master-xxx options that occurred in 5.1 (with removal
in 5.5.3). The option value now can be set using CHANGE MASTER TO.

Reason to deprecate option: It's confusing because it is silently
ignored if the master.info file exists.

* WL#751:

This worklog implemented --lc-messages-dir/lc_messages_dir. It
deprecated the --language option and has already removed the language
system variable. It remains to schedule removal of the --language
option.

* WL#4738:

Deprecate the storage_engine system variable.

Reason: WL#4738 added default_storage_engine, which has the same
meaning, but the name matches the --default-storage-engine command-line
option more closely. storage_engine does not have the same obvious
correspondence to --default-storage-engine.

Note: This was already deprecated in 5.5 by WL#5185. WL#5265 adds
warnings, for removal see WL#5681.

* From Kostja:

I'd like to request a deprecation and removal of global server
variable/startup option 'table_lock_wait_timeout'.

This option is currently unused.  Starting from 5.5, it is fully
superseded by a global and a session option lock_wait_timeout.

Note: table_lock_wait_timeout was already removed in 5.5.3 by BUG#45225

* From Davi:

On trunk (5.5) in sys_vars.cc there is some signs that the options
sql_low_priority_updates and sql_big_tables are to be removed, but
I haven't found any indication that they are being deprecated.
Perhaps we can add those two to WL#5265 or a similar worklog?

Reference from sys_vars.cc

#ifndef TO_BE_DELETED   /* Alias for big_tables */
static Sys_var_mybool Sys_sql_big_tables(
     "sql_big_tables", "alias for big_tables",
     SESSION_VAR(big_tables), NO_CMD_LINE, DEFAULT(FALSE));
#endif

#ifndef TO_BE_DELETED   /* Alias for the low_priority_updates */
static Sys_var_mybool Sys_sql_low_priority_updates(
     "sql_low_priority_updates",
     "INSERT/DELETE/UPDATE has lower priority than selects",
     SESSION_VAR(low_priority_updates), NO_CMD_LINE,
     DEFAULT(FALSE), NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
     ON_UPDATE(fix_low_prio_updates));
#endif

* WL#5252:

Deprecate optimizer_search_depth, value 63.

Add deprecation warnings for value 63 beginning in 5.5, remove value
63 beginning with 1st GA release after Celosia. Deprecation warnings
will be added to the *manual* beginning with 5.1.

Note: The deprecation as of Celosia, and removal of 63 as a legal
value in Dahlia has already occurred. For this item, there is nothing
else to do; it is listed for completeness.

Note: This was deprecated by WL#5252, removed by WL#5369.

* From Kostja and Staale:

Deprecate the thread_concurrency system variable. It is unused within
the server (See BUG#55001 )