23 #ifndef MYSQL_SERVER_PERSISTENT_DYNAMIC_LOADER_H 24 #define MYSQL_SERVER_PERSISTENT_DYNAMIC_LOADER_H 74 static bool init(
void *thdp);
105 int component_count));
129 int component_count));
Instrumentation helpers for mutexes.
static bool initialized()
Initialisation status of persistence loader.
Definition: persistent_dynamic_loader.cc:320
#define DEFINE_BOOL_METHOD(name, args)
Some integer typedefs for easier portability.
Allows to wrap another Service Implementation of the Dynamic Loader service and add ability to store ...
Definition: persistent_dynamic_loader.h:56
static std::map< std::string, uint64 > component_id_by_urn
Stores mapping of component URNs to their component_id used in component table, to ease row deletion...
Definition: persistent_dynamic_loader.h:141
static std::atomic< uint64 > group_id
Stores last group ID used in component table.
Definition: persistent_dynamic_loader.h:136
static bool init(void *thdp)
Initializes persistence store, loads all groups of components registered in component table...
Definition: persistent_dynamic_loader.cc:192
static void deinit()
De-initializes persistence loader.
Definition: persistent_dynamic_loader.cc:306
static mysql_service_status_t load(void *thd_ptr, const char *urns[], int component_count) noexcept
Loads specified group of components by URN, initializes them and registers all service implementation...
Definition: persistent_dynamic_loader.cc:343
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:49
static bool is_initialized
Indicates the initialization status of dynamic loader persistence.
Definition: persistent_dynamic_loader.h:145
static mysql_service_status_t unload(void *thd_ptr, const char *urns[], int component_count) noexcept
Unloads specified group of Components by URN, deinitializes them and unregisters all service implemen...
Definition: persistent_dynamic_loader.cc:452
Specifies macros to define Service Implementations.
static mysql_mutex_t component_id_by_urn_mutex
Serializes access to component_id_by_urn.
Definition: persistent_dynamic_loader.h:150