23#ifndef DD__TABLESPACE_INCLUDED
24#define DD__TABLESPACE_INCLUDED
211bool operator==(
const Tablespace_table_ref &a,
const Tablespace_table_ref &b);
213bool operator<(
const Tablespace_table_ref &a,
const Tablespace_table_ref &b);
A pending metadata lock request.
Definition: mdl.h:800
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:33
Definition: collection.h:43
Base class for dictionary objects which has single column integer primary key.
Definition: entity_object.h:47
virtual const String_type & name() const =0
Definition: object_keys.h:122
Definition: object_keys.h:76
The Properties class defines an interface for storing key=value pairs, where both key and value may b...
Definition: properties.h:73
Opaque context which keeps reusable resoureces needed during deserialization.
Definition: sdi.cc:230
Opaque context which keeps reusable resources needed during serialization.
Definition: sdi.cc:128
Definition: tablespace_file.h:44
Definition: tablespace_impl.h:56
Definition: tablespace.h:54
tables::Tablespaces DD_table
Definition: tablespace.h:58
virtual const Properties & se_private_data() const =0
virtual Tablespace_file * add_file()=0
Void_key Aux_key
Definition: tablespace.h:61
virtual Tablespace * clone() const =0
Allocate a new object graph and invoke the copy constructor for each object.
virtual Properties & options()=0
virtual Properties & se_private_data()=0
Tablespace Cache_partition
Definition: tablespace.h:57
virtual bool deserialize(Sdi_rcontext *rctx, const RJ_Value &val)=0
Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provide...
virtual const String_type & engine() const =0
virtual bool set_options(const String_type &options_raw)=0
Primary_id_key Id_key
Definition: tablespace.h:59
virtual void set_comment(const String_type &comment)=0
~Tablespace() override=default
virtual bool is_empty(THD *thd, bool *empty) const =0
Check if the tablespace is empty, i.e., whether it has any tables.
virtual bool update_aux_key(Aux_key *) const
Definition: tablespace.h:77
virtual Tablespace * clone_dropped_object_placeholder() const =0
Allocate a new object which can serve as a placeholder for the original object in the Dictionary_clie...
virtual const Tablespace_file_collection & files() const =0
virtual LEX_CSTRING engine_attribute() const =0
Tablespace_impl Impl
Definition: tablespace.h:56
virtual void serialize(Sdi_wcontext *wctx, Sdi_writer *w) const =0
Converts *this into json.
virtual void set_engine(const String_type &engine)=0
virtual bool update_id_key(Id_key *key) const
Definition: tablespace.h:65
virtual bool set_se_private_data(const String_type &se_private_data_raw)=0
Collection< Tablespace_file * > Tablespace_file_collection
Definition: tablespace.h:62
virtual const String_type & comment() const =0
Global_name_key Name_key
Definition: tablespace.h:60
virtual bool update_name_key(Name_key *key) const
Definition: tablespace.h:71
virtual void set_engine_attribute(LEX_CSTRING a)=0
virtual bool remove_file(String_type data_file)=0
virtual const Properties & options() const =0
Definition: object_keys.h:53
Definition: tablespaces.h:40
Some integer typedefs for easier portability.
std::vector< Moved > Tablespaces
Definition: fil0fil.cc:125
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:42
RJ_Writer Sdi_writer
Alias for the rapidjson Writer type to use in serialization.
Definition: sdi_fwd.h:63
unsigned long long Object_id
Definition: object_id.h:30
bool operator<(const Tablespace_table_ref &a, const Tablespace_table_ref &b)
Definition: tablespace_impl.cc:403
bool fetch_tablespace_table_refs(THD *thd, const Tablespace &tso, Tablespace_table_ref_vec *tblrefsp)
Fetch (by inserting into tblref vector) Tablespace_table_ref objects which describe tables in a given...
Definition: tablespace_impl.cc:407
std::vector< Tablespace_table_ref > Tablespace_table_ref_vec
Definition: tablespace.h:215
bool operator==(const Tablespace_table_ref &a, const Tablespace_table_ref &b)
Definition: tablespace_impl.cc:399
MDL_request * mdl_req(THD *thd, const Tablespace_table_ref &tref, enum enum_mdl_type mdl_type)
Create am MDL_request for a the table identified by a Tablespace_table_ref.
Definition: tablespace_impl.cc:533
rapidjson::GenericValue< RJ_Encoding, RJ_Allocator > RJ_Value
Definition: sdi_fwd.h:48
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:50
MDL_request * mdl_schema_req(THD *thd, const dd::String_type &schema_name)
Create am MDL_request for a the schema name provided.
Definition: tablespace_impl.cc:551
Definition: varlen_sort.h:183
required string key
Definition: replication_asynchronous_connection_failover.proto:59
This header provides Rapidjson Type Aliases.
enum_mdl_type
Type of metadata lock request.
Definition: sql_lexer_yacc_state.h:105
case opt name
Definition: sslopt-case.h:32
Definition: mysql_lex_string.h:39
Represents tables with their id, name, schema id and schema name.
Definition: tablespace.h:196
Object_id m_id
Definition: tablespace.h:197
Tablespace_table_ref(Object_id id, const String_type &&name, Object_id schema_id)
Definition: tablespace.h:203
Object_id m_schema_id
Definition: tablespace.h:199
String_type m_schema_name
Definition: tablespace.h:200
String_type m_name
Definition: tablespace.h:198
Tablespace_table_ref()=default
bool m_schema_encryption
Definition: tablespace.h:201
unsigned long id[MAX_DEAD]
Definition: xcom_base.cc:509