Hi, Kristofer!
We've discussed this bug again with Kostja.
Please, go with the second solution: --innodb=force
On Apr 02, Sergei Golubchik wrote:
> On Nov 21, Kristofer Pettersson wrote:
> >
> > 2675 Kristofer Pettersson 2008-11-21
> > Bug#19027 MySQL 5.0 starts even with Fatal InnoDB errors
> >
> > If the InnoDB SE fails to initialize during server start up,
> > there is no automatic mechanism for client applications to
> > detect that the meta data has changed.
> >
> > This patch provide a solution to this issue so that if the
> > InnoDB SE plugins fail the server won't go online unless the
> > plugin loading mechanism was "--loose-plugin-load" in which case
> > the server will start with best effort.
>
> > @@ -6671,6 +6671,11 @@ The minimum value for this variable is 4
> > "identified by name and path to library seperated by an equals.",
> > (uchar**) &opt_plugin_load, (uchar**) &opt_plugin_load, 0,
> > GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
> > + {"loose_plugin_load", OPT_LOOSE_PLUGIN_LOAD,
> > + "Optional colon separated list of plugins to load, where each plugin is "
> > + "identified by name and path to library seperated by an equals.",
> > + (uchar**) &opt_loose_plugin_load, (uchar**) &opt_loose_plugin_load,
> 0,
> > + GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
> > {"preload_buffer_size", OPT_PRELOAD_BUFFER_SIZE,
> > "The size of the buffer that is allocated when preloading indexes",
> > (uchar**) &global_system_variables.preload_buff_size,
>
> No, this is not what I mean. loose prefix is automatically supported by
> my_getopt, by adding an option that actually starts with "loose-" you
> enabled ./mysqld --loose-loose-plugin-load, which looks a bit too loose
> to me :)
>
> What I meant is
>
> mysqld --disable-innodb ... will start without innodb
> mysqld --enable-innodb ... will never start with innodb, yes,
> really. If innodb fails to start,
> the server won't start either
> mysqld --loose-enable-innodb ... will start with innodb, if
> possible. If innodb fails to start,
> the server goes on anyway.
>
> Another possibility is to change a boolean option --pluginname to a
> tristate option:
>
> mysqld --innodb=off ... without innodb
> mysqld --innodb=on ... with innodb, if possible
> mysqld --innodb=force ... with innodb, guaranteed
>
> This is, I expect, easier to do than reusing the loose prefix.
>
Regards / Mit vielen Grüßen,
Sergei
--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg@stripped>
/ /|_/ / // /\ \/ /_/ / /__ Principal Software Engineer/Server Architect
/_/ /_/\_, /___/\___\_\___/ Sun Microsystems GmbH, HRB München 161028
<___/ Sonnenallee 1, 85551 Kirchheim-Heimstetten
Geschäftsführer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
Vorsitzender des Aufsichtsrates: Martin Häring