24#ifndef DD__WEAK_OBJECT_IMPL_INCLUDED 
   25#define DD__WEAK_OBJECT_IMPL_INCLUDED 
   38class Entity_object_impl;
 
   41class Open_dictionary_tables_ctx;
 
   47template <
bool use_pfs>
 
   54  void *
operator new(
size_t size, 
const std::nothrow_t &nt) 
noexcept {
 
   60    return ::operator 
new(
size, nt);
 
   63  void operator delete(
void *ptr, 
const std::nothrow_t &nt) 
noexcept {
 
   67      ::operator 
delete(ptr, nt);
 
   70  void *
operator new(
size_t size) 
noexcept {
 
   76    return ::operator 
new(
size);
 
   79  void operator delete(
void *ptr) 
noexcept {
 
   83      ::operator 
delete(ptr);
 
Definition: entity_object_impl.h:44
 
Definition: object_key.h:38
 
This class represents all data dictionary table like mysql.tables, mysql.columns and more.
Definition: object_table.h:72
 
Auxiliary class for opening dictionary tables.
Definition: transaction_impl.h:76
 
Definition: raw_record.h:141
 
Definition: raw_record.h:46
 
Definition: weak_object_impl.h:48
 
virtual void fix_has_new_primary_key()
Definition: weak_object_impl.h:148
 
virtual void set_primary_key_value(const Raw_new_record &)
Definition: weak_object_impl.h:142
 
virtual bool restore_children(Open_dictionary_tables_ctx *)
Definition: weak_object_impl.h:119
 
~Weak_object_impl_() override=default
 
bool check_parent_consistency(Entity_object_impl *parent, Object_id parent_id) const
Definition: weak_object_impl.cc:225
 
virtual bool restore_attributes(const Raw_record &r)=0
 
virtual bool store_children(Open_dictionary_tables_ctx *)
Definition: weak_object_impl.h:121
 
Weak_object_impl_()=default
 
virtual const Object_table & object_table() const =0
 
virtual bool has_new_primary_key() const =0
Indicates that object is guaranteed to have primary key value which doesn't exist in database (e....
 
virtual bool validate() const =0
 
virtual bool store_attributes(Raw_record *r)=0
 
virtual Object_key * create_primary_key() const =0
 
virtual bool store(Open_dictionary_tables_ctx *otx)
Store the DD object into DD table.
Definition: weak_object_impl.cc:59
 
virtual bool drop_children(Open_dictionary_tables_ctx *) const
Definition: weak_object_impl.h:123
 
bool drop(Open_dictionary_tables_ctx *otx) const
Drop the DD object from DD table.
Definition: weak_object_impl.cc:178
 
Base class for all data dictionary objects.
Definition: weak_object.h:42
 
#define MY_WME
Definition: my_sys.h:128
 
#define MYF(v)
Definition: my_inttypes.h:97
 
void * my_malloc(PSI_memory_key key, size_t size, int flags)
Allocates size bytes of memory.
Definition: my_memory.cc:57
 
void my_free(void *ptr)
Frees the memory pointed by the ptr.
Definition: my_memory.cc:81
 
Common header for many mysys elements.
 
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
 
unsigned long long Object_id
Definition: object_id.h:31
 
size_t size(const char *const c)
Definition: base64.h:46
 
const mysql_service_registry_t * r
Definition: pfs_example_plugin_employee.cc:86
 
PSI_memory_key key_memory_DD_objects
Definition: psi_memory_key.cc:41