MySQL  8.0.17
Source Code Documentation
server_component.h File Reference

Defines MySQL Server Component. More...

Go to the source code of this file.

Functions

void registry_init ()
 
void registry_deinit ()
 
void dynamic_loader_init ()
 
void dynamic_loader_deinit ()
 
bool persistent_dynamic_loader_init (void *thd)
 Initializes persistence store, loads all groups of components registered in component table. More...
 
void persistent_dynamic_loader_deinit ()
 
void dynamic_loader_scheme_file_init ()
 
void dynamic_loader_scheme_file_deinit ()
 
void mysql_string_services_init ()
 The string functions as a service to the mysql_server component. More...
 
void mysql_comp_status_var_services_init ()
 Its a dummy initialization function. More...
 
void mysql_comp_sys_var_services_init ()
 
void mysql_comp_system_variable_source_init ()
 
void mysql_security_context_init ()
 Its a dummy initialization function. More...
 
void mysql_backup_lock_service_init ()
 
void mysql_server_ongoing_transactions_query_init ()
 
void mysql_audit_api_service_init ()
 
void mysql_keyring_iterator_service_init ()
 
void clone_protocol_service_init ()
 
void host_application_signal_imp_init ()
 A dummy initialization function. More...
 
void page_track_service_init ()
 
void mysql_current_thread_reader_imp_init ()
 A dummy initialization function. More...
 
bool mysql_services_bootstrap (const mysql_service_registry_t **registry)
 Bootstraps service registry and dynamic loader and make ready all basic server services. More...
 
void shutdown_dynamic_loader ()
 Shutdowns dynamic loader. More...
 
bool mysql_services_shutdown ()
 Shutdowns service registry making sure all basic services are unregistered. More...
 
void mysql_components_handle_std_exception (const char *funcname)
 Checks if last thrown exception is any kind of standard exceptions, i.e. More...
 

Variables

const mysql_service_registry_t imp_mysql_server_registry
 
const mysql_service_registry_registration_t imp_mysql_server_registry_registration
 

Detailed Description

Defines MySQL Server Component.

It contains both core Components infrastructure and MySQL-specific Service Implementations. It is a subject for dividing into separate components in future.

Function Documentation

◆ clone_protocol_service_init()

void clone_protocol_service_init ( )

◆ dynamic_loader_deinit()

void dynamic_loader_deinit ( )

◆ dynamic_loader_init()

void dynamic_loader_init ( )

◆ dynamic_loader_scheme_file_deinit()

void dynamic_loader_scheme_file_deinit ( )

◆ dynamic_loader_scheme_file_init()

void dynamic_loader_scheme_file_init ( )

◆ host_application_signal_imp_init()

void host_application_signal_imp_init ( )

A dummy initialization function.

And it will be called from server_component_init(). Else linker, is cutting out (as library optimization) this file's code because libsql code is not calling any functions of it.

◆ mysql_audit_api_service_init()

void mysql_audit_api_service_init ( )

◆ mysql_backup_lock_service_init()

void mysql_backup_lock_service_init ( )

◆ mysql_comp_status_var_services_init()

void mysql_comp_status_var_services_init ( )

Its a dummy initialization function.

And it will be called from server_component_init(). Else linker, is cutting out (as library optimization) the status variable service code because libsql code is not calling any functions of it.

◆ mysql_comp_sys_var_services_init()

void mysql_comp_sys_var_services_init ( )

◆ mysql_comp_system_variable_source_init()

void mysql_comp_system_variable_source_init ( )

◆ mysql_components_handle_std_exception()

void mysql_components_handle_std_exception ( const char *  funcname)

Checks if last thrown exception is any kind of standard exceptions, i.e.

the exceptions inheriting from std::exception. If so, reports an error message that states exception type and message. On any other thrown value it just reports general error.

◆ mysql_current_thread_reader_imp_init()

void mysql_current_thread_reader_imp_init ( )

A dummy initialization function.

And it will be called from server_component_init(). Else linker, is cutting out (as library optimization) this file's code because libsql code is not calling any functions of it.

◆ mysql_keyring_iterator_service_init()

void mysql_keyring_iterator_service_init ( )

◆ mysql_security_context_init()

void mysql_security_context_init ( )

Its a dummy initialization function.

And it will be called from server_component_init(). Else linker, is cutting out (as library optimization) the security_context methods, because libsql code is not calling any functions of it.

◆ mysql_server_ongoing_transactions_query_init()

void mysql_server_ongoing_transactions_query_init ( )

◆ mysql_services_bootstrap()

bool mysql_services_bootstrap ( const mysql_service_registry_t **  registry)

Bootstraps service registry and dynamic loader and make ready all basic server services.

Parameters
[out]registryA Service implementation the the Registry Service. May be NULL.
Returns
Status of performed operation
Return values
falsesuccess
truefailure
Parameters
[out]registryA service handle to registry service. May be NULL.
Returns
Status of performed operation
Return values
falsesuccess
truefailure

◆ mysql_services_shutdown()

bool mysql_services_shutdown ( )

Shutdowns service registry making sure all basic services are unregistered.

Will fail if any service implementation is in use.

Returns
Status of performed operation
Return values
falsesuccess
truefailure

◆ mysql_string_services_init()

void mysql_string_services_init ( )

The string functions as a service to the mysql_server component.

So, that by default this service is available to all the components register to the server. Its a dummy initialization function. And it will be called from mysql_component_infrastructure_init(). Else linker, is cutting out (as library optimization) the string service code because libsql code is not calling any functions of it.

◆ page_track_service_init()

void page_track_service_init ( )

◆ persistent_dynamic_loader_deinit()

void persistent_dynamic_loader_deinit ( )

◆ persistent_dynamic_loader_init()

bool persistent_dynamic_loader_init ( void *  thd)

Initializes persistence store, loads all groups of components registered in component table.

Parameters
thdCurrent thread execution context
Returns
Status of performed operation
Return values
falsesuccess
truefailure

◆ registry_deinit()

void registry_deinit ( )

◆ registry_init()

void registry_init ( )

◆ shutdown_dynamic_loader()

void shutdown_dynamic_loader ( )

Shutdowns dynamic loader.

Variable Documentation

◆ imp_mysql_server_registry

const mysql_service_registry_t imp_mysql_server_registry

◆ imp_mysql_server_registry_registration

const mysql_service_registry_registration_t imp_mysql_server_registry_registration