← Back to team overview

maria-developers team mailing list archive

Re: a8162d4: MDEV-9312: storage engine not enforced during galera cluster replication

 

Hi, Nirbhay!

On Sep 27, Nirbhay Choubey wrote:
> On Tue, Sep 27, 2016 at 3:49 PM, Sergei Golubchik <serg@xxxxxxxxxxx> wrote:
> >
> > I don't understand, why do you need to create a dummy plugin here?
> >
> 
> Since global_system_variables.table_plugin is null when the startup
> wsrep threads are created, I used dummy plugin to initialize it to
> avoid running into segfaults in intern_plugin_lock() invoked from
> under plugin_thdvar_init().
> 
> static plugin_ref intern_plugin_lock(LEX *lex, plugin_ref rc)
> {
>   st_plugin_int *pi= plugin_ref_to_int(rc);
> ...
>   if (pi->state & (PLUGIN_IS_READY | PLUGIN_IS_UNINITIALIZED |
>                    PLUGIN_IS_DELETED))

I see.

> Also, with this commit plugin_thdvar_init() is free from wsrep related
> changes.

That's great, indeed!
I'd probably declared wsrep_dummy_plugin statically, instead of
allocating it:

  static st_plugin_int wsrep_dummy_plugin;

but it doesn't matter much in this bug fix, so whatever you prefer.

Ok to push

Regards,
Sergei
Chief Architect MariaDB
and security@xxxxxxxxxxx


References