← Back to team overview

maria-developers team mailing list archive

Re: Removing very old options for --old, --new, --safe-mode

 

Hi!

>>>>> "Sergei" == Sergei Golubchik <serg@xxxxxxxxxxxx> writes:

Sergei> Hi, Michael!
Sergei> On Sep 14, Michael Widenius wrote:
>> 
>> Hi!
>> 
>> I did notice that we haven't cleaned up the usage of the
>> --old, --new, --safe-mode and --skip-new options in a long time.
>> 
>> Here is a cleanup of this for MariaDB 5.2 (soon to be made gamma).
>> After this suggested change, here is how the options would work:
>> 
>> --new	Use new functionality that will exist in next version of
>> MariaDB. This function exist to make it easier to prepare for an
>> upgrade. For version 5.1 this functions enables the LIST and RANGE
>> partitions functions for ndbcluster.

<cut>

>> --safe_mode
>> Disable some potential unsafe optimization. For 5.2 these are:
>> INSERT DELAYED is disabled, myisam_recover_options is set to
>> DEFAULT (automatically recover crashed MyISAM files). For Aria
>> table, disable bulk insert optimization to enable one to use
>> maria_read_log to recover tables even if tables are deleted
>> (good for testing recovery).
>> 
>> --skip-new
>> Skip some new potentially unsafe functions. For 5.2 these are:
>> INSERT DELAYED is disabled, Query cache size is reset.
Sergei> ... 
>> Any comments ?

Sergei> Yes.
Sergei> my_getopt supports skip- prefix for all options.
Sergei> Having --skip-new that is different from --skip-new is very confusing.
Sergei> No, "very" is an understatement, Very, VERY, terribly, awfully, deadly
Sergei> confusing.

Sergei> In fact - really! - before I saw this your email, I did not realize
Sergei> there is --skip-new option, and naively thought it's just --skip-new.

Sergei> So, please, please, remove --skip-new option altogether, and let
Sergei> --skip-new to mean what it should (according to the principle of the
Sergei> least surprise) - disabling previously enabled --new.

I agree it's confusing. Changing this is not compatible with old
versions, but as one shouldn't use --skip-new except temporally to go
around a bug, it should be a safe change.

I will change so that what is now disabled with --skip-new will be
moved to --safe-mode, where it should have been from the start.

I will do this in a separate changeset and push with the my_bool ->
bool fix (when I have got approval for that)

Regards,
Monty



References