Skip to content
  • Shishir Jaiswal's avatar
    1cdaea80
    Bug#22777039 - MYSQLD --INITIALIZE DOES NOT SUPPORT THE · 1cdaea80
    Shishir Jaiswal authored
                   KEYRING_FILE_DATA OPTION
    
    DESCRIPTION
    ===========
    Initializing datadir with the keyring_file_data option
    fails with the following error:
    
    [ERROR] unknown variable 'keyring_file_data={path}/keyring'
    
    ANALYSIS
    ========
    From MySQL 5.7.12 onwards, the default --early-plugin-load
    value is empty thus we must provide with some nonempty
    value to it.
    
    One of the uses of this option is to load the keyring_file
    plugin, where we provide some value to it (for e.g.
    'keyring_file=keyring_file.so'). However doing so currently
    while initializing a datadir is denied! Reason being when
    server is invoked for initialization of datadir, the
    variable 'bootstrap' in 5.7 (and 'opt_initialize' in trunk)
    value is 1. The same is read in plugin_init() in 5.7 [and
    in plugin_register_early_plugins() in trunk] and in such a
    case we currently skip the registration of early plugins.
    As a result of which its not added in the list of plugins
    to be loaded early and on encountering this plugin, the
    server throws the reported error.
    
    FIX
    ===
    Removed the check for variable 'bootstrap' in 5.7 (and var
    'opt_initialize' in trunk) so now registration of early
    plugin is done always and hence the loading of plugins etc.
    is done as usual.
    1cdaea80
    Bug#22777039 - MYSQLD --INITIALIZE DOES NOT SUPPORT THE
    Shishir Jaiswal authored
                   KEYRING_FILE_DATA OPTION
    
    DESCRIPTION
    ===========
    Initializing datadir with the keyring_file_data option
    fails with the following error:
    
    [ERROR] unknown variable 'keyring_file_data={path}/keyring'
    
    ANALYSIS
    ========
    From MySQL 5.7.12 onwards, the default --early-plugin-load
    value is empty thus we must provide with some nonempty
    value to it.
    
    One of the uses of this option is to load the keyring_file
    plugin, where we provide some value to it (for e.g.
    'keyring_file=keyring_file.so'). However doing so currently
    while initializing a datadir is denied! Reason being when
    server is invoked for initialization of datadir, the
    variable 'bootstrap' in 5.7 (and 'opt_initialize' in trunk)
    value is 1. The same is read in plugin_init() in 5.7 [and
    in plugin_register_early_plugins() in trunk] and in such a
    case we currently skip the registration of early plugins.
    As a result of which its not added in the list of plugins
    to be loaded early and on encountering this plugin, the
    server throws the reported error.
    
    FIX
    ===
    Removed the check for variable 'bootstrap' in 5.7 (and var
    'opt_initialize' in trunk) so now registration of early
    plugin is done always and hence the loading of plugins etc.
    is done as usual.
Loading