24#ifndef DD__TABLESPACE_INCLUDED
25#define DD__TABLESPACE_INCLUDED
212bool operator==(
const Tablespace_table_ref &a,
const Tablespace_table_ref &b);
214bool operator<(
const Tablespace_table_ref &a,
const Tablespace_table_ref &b);
A pending metadata lock request.
Definition: mdl.h:801
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:34
Definition: collection.h:44
Base class for dictionary objects which has single column integer primary key.
Definition: entity_object.h:48
virtual const String_type & name() const =0
Definition: object_keys.h:123
Definition: object_keys.h:77
The Properties class defines an interface for storing key=value pairs, where both key and value may b...
Definition: properties.h:74
Opaque context which keeps reusable resoureces needed during deserialization.
Definition: sdi.cc:231
Opaque context which keeps reusable resources needed during serialization.
Definition: sdi.cc:129
Definition: tablespace_file.h:45
Definition: tablespace_impl.h:57
Definition: tablespace.h:55
tables::Tablespaces DD_table
Definition: tablespace.h:59
virtual const Properties & se_private_data() const =0
virtual Tablespace_file * add_file()=0
Void_key Aux_key
Definition: tablespace.h:62
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:58
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:60
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:78
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:57
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:66
virtual bool set_se_private_data(const String_type &se_private_data_raw)=0
Collection< Tablespace_file * > Tablespace_file_collection
Definition: tablespace.h:63
virtual const String_type & comment() const =0
Global_name_key Name_key
Definition: tablespace.h:61
virtual bool update_name_key(Name_key *key) const
Definition: tablespace.h:72
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:54
Definition: tablespaces.h:41
Some integer typedefs for easier portability.
std::vector< Moved > Tablespaces
Definition: fil0fil.cc:127
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
RJ_Writer Sdi_writer
Alias for the rapidjson Writer type to use in serialization.
Definition: sdi_fwd.h:64
unsigned long long Object_id
Definition: object_id.h:31
bool operator<(const Tablespace_table_ref &a, const Tablespace_table_ref &b)
Definition: tablespace_impl.cc:404
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:408
std::vector< Tablespace_table_ref > Tablespace_table_ref_vec
Definition: tablespace.h:216
bool operator==(const Tablespace_table_ref &a, const Tablespace_table_ref &b)
Definition: tablespace_impl.cc:400
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:534
rapidjson::GenericValue< RJ_Encoding, RJ_Allocator > RJ_Value
Definition: sdi_fwd.h:49
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:51
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:552
Definition: gcs_xcom_synode.h:64
required string key
Definition: replication_asynchronous_connection_failover.proto:60
This header provides Rapidjson Type Aliases.
enum_mdl_type
Type of metadata lock request.
Definition: sql_lexer_yacc_state.h:106
case opt name
Definition: sslopt-case.h:33
Definition: mysql_lex_string.h:40
Represents tables with their id, name, schema id and schema name.
Definition: tablespace.h:197
Object_id m_id
Definition: tablespace.h:198
Tablespace_table_ref(Object_id id, const String_type &&name, Object_id schema_id)
Definition: tablespace.h:204
Object_id m_schema_id
Definition: tablespace.h:200
String_type m_schema_name
Definition: tablespace.h:201
String_type m_name
Definition: tablespace.h:199
Tablespace_table_ref()=default
bool m_schema_encryption
Definition: tablespace.h:202
unsigned long id[MAX_DEAD]
Definition: xcom_base.cc:510