My Project
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
binlog_cache_data Class Reference
Inheritance diagram for binlog_cache_data:
binlog_stmt_cache_data binlog_trx_cache_data

List of all members.

Classes

struct  Flags

Public Member Functions

 binlog_cache_data (bool trx_cache_arg, my_off_t max_binlog_cache_size_arg, ulong *ptr_binlog_cache_use_arg, ulong *ptr_binlog_cache_disk_use_arg)
int finalize (THD *thd, Log_event *end_event)
int flush (THD *thd, my_off_t *bytes, bool *wrote_xid)
int write_event (THD *thd, Log_event *event)
bool is_binlog_empty () const
bool is_group_cache_empty () const
bool dbug_is_finalized () const
Rows_log_eventpending () const
void set_pending (Rows_log_event *const pending)
void set_incident (void)
bool has_incident (void) const
bool has_xid () const
bool is_trx_cache () const
my_off_t get_byte_position () const
virtual void reset ()
my_off_t reset_write_pos (my_off_t pos, bool use_reinit)

Public Attributes

IO_CACHE cache_log
Group_cache group_cache

Protected Member Functions

void truncate (my_off_t pos)
int flush_pending_event (THD *thd)
int remove_pending_event ()

Protected Attributes

struct binlog_cache_data::Flags flags

Detailed Description

Caches for non-transactional and transactional data before writing it to the binary log.

Todo:
All the access functions for the flags suggest that the encapsuling is not done correctly, so try to move any logic that requires access to the flags into the cache.

Member Function Documentation

int binlog_cache_data::flush_pending_event ( THD *  thd) [inline, protected]

Flush pending event to the cache buffer.

int binlog_cache_data::remove_pending_event ( ) [inline, protected]

Remove the pending event.


Member Data Documentation

The group cache for this cache.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines