MySQL 26.10.0
Source Code Documentation
mrs_component_backend.cc File Reference
#include <algorithm>
#include <cassert>
#include <exception>
#include <filesystem>
#include <optional>
#include <stdexcept>
#include <string>
#include <string_view>
#include <system_error>
#include <utility>
#include "mysql/components/util/debug_sync.h"
#include "mysql/harness/application_type_manager.h"
#include "mysql/harness/logging/registry.h"
#include "mysql/harness/process_state_component.h"
#include "mysql/harness/tls_server_context.h"
#include "mysql/harness/utility/string.h"
#include "mysqld_error.h"
#include "mysqlrouter/io_component.h"
#include "mysqlrouter/supported_router_options.h"
#include "mysqlrouter/utils_sqlstring.h"
#include "router/router_config.h"
#include "scope_guard.h"
#include "component_application_type_name.h"
#include "mrs_component.h"
#include "mrs_component_backend.h"
#include "mrs_component_command_executor.h"
#include "mrs_component_log.h"
#include "mrs_component_runtime_services.h"
#include "random_generator.h"
#include "router/src/harness/src/builtin_plugins.h"
#include "router/src/harness/src/logging/componentlog_plugin.h"
#include "router/src/mysql_rest_service/include/mrs/embedded_runtime_services.h"

Namespaces

namespace  mrs_component
 
namespace  mrs_component::anonymous_namespace{mrs_component_backend.cc}
 

Typedefs

using mrs_component::anonymous_namespace{mrs_component_backend.cc}::MRSAccount = RouterConfig::MRSAccount
 

Functions

static void mrs_debug_sync (const char *name)
 
std::string mrs_component::anonymous_namespace{mrs_component_backend.cc}::format_auth_id (const std::string &username, std::string_view host=internal_account_host)
 
bool mrs_component::anonymous_namespace{mrs_component_backend.cc}::account_is_locked (const MRSAccount &account)
 
void mrs_component::anonymous_namespace{mrs_component_backend.cc}::validate_account_in_session (Command_executor &query_executor, const MRSAccount &account, bool is_locked)
 
void mrs_component::anonymous_namespace{mrs_component_backend.cc}::validate_account (const MRSAccount &account)
 
bool mrs_component::anonymous_namespace{mrs_component_backend.cc}::create_account_if_missing (Command_executor &query_executor, const MRSAccount &account, bool defer_missing_provider_role)
 
template<typename Operation >
int mrs_component::anonymous_namespace{mrs_component_backend.cc}::run_backend_operation (const char *name, Operation &&operation) noexcept
 

Variables

mysql_harness::Plugin harness_plugin_router_protobuf
 
mysql_harness::Plugin harness_plugin_mysql_rest_service
 
mysql_harness::Plugin harness_plugin_io
 
mysql_harness::Plugin harness_plugin_http_server
 
mysql_harness::Plugin harness_plugin_routing
 
mysql_harness::Plugin harness_plugin_host_cache
 
mysql_harness::Plugin harness_plugin_router_openssl
 
mysql_harness::Plugin harness_plugin_connection_pool
 
mysql_harness::Plugin harness_plugin_destination_status
 
constexpr unsigned int mrs_component::kCpusPerIoWorker = 4
 
constexpr const char mrs_component::kMetadataSchemaCheckQuery []
 
constexpr const char mrs_component::kMetadataSchemaVersionQuery []
 
constexpr char mrs_component::anonymous_namespace{mrs_component_backend.cc}::internal_account_host [] = "localhost"
 
constexpr char mrs_component::anonymous_namespace{mrs_component_backend.cc}::provider_role_host [] = "%"
 

Function Documentation

◆ mrs_debug_sync()

static void mrs_debug_sync ( const char *  name)
static

Variable Documentation

◆ harness_plugin_connection_pool

mysql_harness::Plugin harness_plugin_connection_pool

◆ harness_plugin_destination_status

mysql_harness::Plugin harness_plugin_destination_status

◆ harness_plugin_host_cache

mysql_harness::Plugin harness_plugin_host_cache

◆ harness_plugin_http_server

mysql_harness::Plugin harness_plugin_http_server

◆ harness_plugin_io

mysql_harness::Plugin harness_plugin_io

◆ harness_plugin_mysql_rest_service

mysql_harness::Plugin harness_plugin_mysql_rest_service

◆ harness_plugin_router_openssl

mysql_harness::Plugin harness_plugin_router_openssl

◆ harness_plugin_router_protobuf

mysql_harness::Plugin harness_plugin_router_protobuf
Initial value:
= {
mysql_harness::PLUGIN_ABI_VERSION, mysql_harness::ARCHITECTURE_DESCRIPTOR,
"", VERSION_NUMBER(0, 0, 1),
0, nullptr,
0, nullptr,
nullptr,
},
nullptr,
nullptr,
false,
0, nullptr,
nullptr,
}
PluginFuncEnv object.
Definition: loader.h:675

◆ harness_plugin_routing

mysql_harness::Plugin harness_plugin_routing