Skip to content
  • Tor Didriksen's avatar
    518e548f
    Bug#23508762 THE MYSQL_SERVER DEFINE NOT DEFINED DUE TO SPELLING ERROR IN PLUGIN.CMAKE · 518e548f
    Tor Didriksen authored
    The MYSQL_ADD_PLUGIN macro has a spelling error causing the MYSQL_SERVER
    define not to be defined. This causes the storage engine plugins to be
    compiled without MYSQL_SERVER defined and thus may get a different set of
    function signatures, functions and symbols unless the source of the plugins
    themself define the MYSQL_SERVER define.
    
    Fix the spelling error.
    
    The addition of -DMYSQL_SERVER to all plugins uncovers some other bugs
    when compiling performance-schema related code, so more plugins need
    to be recompiled for embedded mode (without performance schema)
    Before this fix, several plugins were not properly instrumented.
    
    Remove -DMYSQL_SERVER from the 'innobase' plugin, it breaks embedded build.
    The alternative would be to do RECOMPILE_FOR_EMBEDDED, but that's a lot
    of extra work.
    
    The standalone test utilities hp_test1 and hp_test2 need to be linked
    against a library built without performance schema.
    
    The standalone myisam utilities (myisam_ftdump et.al.) also need to
    be linked against a library build without performance schema.
    
    Do not include mysys_priv.h from storage/archive/azlib.h,
    it breaks PFS instrumentation code.
    (it includes my_dir.h anyways, and gets my_global.h from there)
    
    Now that the MYSQL_ADD_PLUGIN macro has been fixed, we need to quote the
    'curr' variable in NDB_ADD_TARGET_PROPERTY (${curr} is a list)
    518e548f
    Bug#23508762 THE MYSQL_SERVER DEFINE NOT DEFINED DUE TO SPELLING ERROR IN PLUGIN.CMAKE
    Tor Didriksen authored
    The MYSQL_ADD_PLUGIN macro has a spelling error causing the MYSQL_SERVER
    define not to be defined. This causes the storage engine plugins to be
    compiled without MYSQL_SERVER defined and thus may get a different set of
    function signatures, functions and symbols unless the source of the plugins
    themself define the MYSQL_SERVER define.
    
    Fix the spelling error.
    
    The addition of -DMYSQL_SERVER to all plugins uncovers some other bugs
    when compiling performance-schema related code, so more plugins need
    to be recompiled for embedded mode (without performance schema)
    Before this fix, several plugins were not properly instrumented.
    
    Remove -DMYSQL_SERVER from the 'innobase' plugin, it breaks embedded build.
    The alternative would be to do RECOMPILE_FOR_EMBEDDED, but that's a lot
    of extra work.
    
    The standalone test utilities hp_test1 and hp_test2 need to be linked
    against a library built without performance schema.
    
    The standalone myisam utilities (myisam_ftdump et.al.) also need to
    be linked against a library build without performance schema.
    
    Do not include mysys_priv.h from storage/archive/azlib.h,
    it breaks PFS instrumentation code.
    (it includes my_dir.h anyways, and gets my_global.h from there)
    
    Now that the MYSQL_ADD_PLUGIN macro has been fixed, we need to quote the
    'curr' variable in NDB_ADD_TARGET_PROPERTY (${curr} is a list)
Loading